Delen via


Automatische installatie van SymProxy

Deze stappen samen met het onderstaande Install.cmd script kunnen helpen bij het automatiseren van de installatie van SymProxy naar een standaard-IIS-installatie. Waarschijnlijk moet u deze stappen aanpassen aan de specifieke behoeften van uw omgeving.

  1. Maak de map D:\SymStore\Symbols.

    • Leesrechten aan iedereen geven

    • Lees-/schrijfbewerkingen verlenen aan het gebruikersaccount voor de SymProxy-toepassingspool (domein\gebruiker)

  2. Deel D:\SymStore\Symbolen als symbolen.

    • Leestoegang verlenen aan iedereen (of specifieker zijn)
  3. (Optioneel) Maak een leeg bestand met de naam index2.txt in D:\SymStore\Symbols.

  4. (Optioneel) Maak een leeg bestand met de naam %WINDIR%\system32\inetsrv\symsrv.yes. Hiermee accepteert u de gebruiksrechtovereenkomst voor de Microsoft Public Symbol Store.

  5. Bepaal de parameters voor Install.cmd en voer deze uit.

  6. Configureer het pad naar het clientsymbool met behulp van de servernaam die u hebt gemaakt.

    SRV*\\MachineName\Symbols*https://MachineName/Symbols
    

Voor het Install.cmd script zijn drie parameters vereist:

  • Pad naar virtuele directory (bijvoorbeeld D:\SymStore\Symbols)
  • Gebruikersnaam (voor de groep van toepassingen)
  • Wachtwoord (voor de groep van toepassingen)

Als u de overname van MIME-type wilt wissen, is een XML-bestand nodig om de bijbehorende AppCmd.exe opdracht aan te sturen. Plaats het staticContentClear.xml bestand dat hieronder wordt weergegeven in dezelfde map als het Install.cmd script om dit resultaat te bereiken.

Voorbeeld van parametergebruik Install.Cmd:

Install.cmd D:\SymStore\Symbols CONTOSO\SymProxyService Pa$$word

Install.cmd

@echo off

SET VirDirectory=%1
SET UserName=%2
SET Password=%3

::
::  SymProxy dll installation. 
::

copy symproxy.dll %windir%\system32\inetsrv
copy symproxy.man %windir%\system32\inetsrv
copy symsrv.dll %windir%\system32\inetsrv

lodctr.exe /m:%windir%\system32\inetsrv\symproxy.man
wevtutil.exe install-manifest %windir%\System32\inetsrv\symproxy.man
regedit.exe /s symproxy.reg

::
::  Web server Configuration
::

IF not exist %VirDirectory% mkdir %VirDirectory%

rem Make the 'Default Web Site'
%windir%\system32\inetsrv\appcmd.exe add site -site.name:"Default Web Site" -bindings:"http/*:80:" -physicalPath:C:\inetpub\wwwroot

rem Enabled Directory Browsing on the 'Default Web Site'
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site" -section:system.webServer/directoryBrowse /enabled:"True"

rem Make the 'SymProxy App Pool'
%windir%\system32\inetsrv\appcmd.exe add apppool -apppool.name:SymProxyAppPool -managedRuntimeVersion:
%windir%\system32\inetsrv\appcmd.exe set apppool -apppool.name:SymProxyAppPool -processModel.identityType:SpecificUser -processModel.userName:%UserName% -processModel.password:%Password% 

rem Make the 'Symbols' Virtual Directory and assign the 'SymProxy App Pool'
%windir%\system32\inetsrv\appcmd.exe add app -site.name:"Default Web Site" -path:/Symbols -physicalpath:%VirDirectory%
%windir%\system32\inetsrv\appcmd.exe set app -app.name:"Default Web Site/Symbols" -applicationPool:SymProxyAppPool

rem Disable 'web.config' for folders under virtual directories in the 'Default Web Site'
%windir%\system32\inetsrv\appcmd.exe set config -section:system.applicationHost/sites "/[name='Default Web Site'].virtualDirectoryDefaults.allowSubDirConfig:false

rem Add the 'SymProxy ISAPI Filter'
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/isapiFilters /+"[name='SymProxy',path='%windir%\system32\inetsrv\SymProxy.dll',enabled='True']

rem Clear the MIME Types on the 'Default Web Site'
%windir%\system32\inetsrv\appcmd.exe set config -in "Default Web Site" < staticContentClear.xml

rem Add * to the MIME Types of the 'Default Web Site'
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site" -section:staticContent /+"[fileExtension='.*',mimeType='application/octet-stream']"

staticContentClear.xml

<?xml version="1.0" encoding="UTF-8"?>
<appcmd>
    <CONFIG CONFIG.SECTION="system.webServer/staticContent"                  path="MACHINE/WEBROOT/APPHOST">
        <system.webServer-staticContent>
            <clear />
        </system.webServer-staticContent>
    </CONFIG>
</appcmd>    

De SymProxy-installatie testen

Het systeem moet nu klaar zijn om bestanden te verkrijgen en te bedienen. Als u deze wilt testen, start u eerst de IISAdmin-service opnieuw door iisreset.exeuit te voeren. Hiermee wordt het ISAPI-filter opnieuw geladen met de huidige IIS- en SymProxy-configuratie.

Configureer een foutopsporingsprogramma om dit symboolpad te gebruiken:

srv*\\MachineName\Symbols*https://MachineName/Symbols

Als MissTimeout- is ingeschakeld (deze is standaard ingesteld op 300 seconden), moet het uitvoeren van de opdracht .reload /f tweemaal leiden tot een veel snellere uitvoering de tweede keer.

Gebruik de opdracht lm (lijstmodules) om de locatie weer te geven van de PDBs waarnaar wordt verwezen. Het pad naar de PDBs moet allemaal beginnen met \\MachineName\Symbols.

Als bladeren in mappen is ingeschakeld op de website, bladert u naar https://MachineName/Symbols om de bestanden te zien die in de cache zijn opgeslagen.

Open de Prestatiemeter en bekijk de symbolen-proxy-tellers.

Open de Evenementenviewer en bekijk de Microsoft\Windows\SymProxy-gebeurtenissen.

Zie ook

SymProxy installeren