Automatisk installation av SymProxy
De här stegen tillsammans med Install.cmd skriptet nedan kan hjälpa dig att automatisera installationen av SymProxy till en standardinstallation av IIS. Du kommer förmodligen att behöva anpassa de här stegen till de specifika behoven i din miljö.
Skapa mappen D:\SymStore\Symbols.
Bevilja läsning till alla
Bevilja Read\Write till användarkontot för SymProxy-apppoolen (domän\användare)
Dela D:\SymStore\Symboler som symboler.
- Bevilja läsrättigheter åt alla (eller var mer specifik)
(Valfritt) Skapa en tom fil med namnet index2.txt i D:\SymStore\Symbols.
(Valfritt) Skapa en tom fil med namnet %WINDIR%\system32\inetsrv\symsrv.yes. Detta godkänner licensavtalet för Microsoft Public Symbol Store.
Fastställ parametrarna för Install.cmd och kör den.
Konfigurera symbolvägen för klienterna med hjälp av det servernamn som du skapade.
SRV*\\MachineName\Symbols*https://MachineName/Symbols
Skriptet Install.cmd kräver tre parametrar:
- Sökväg till virtuell katalog (t.ex. D:\SymStore\Symbols )
- Användarnamn (för programpoolen)
- Lösenord (för programpoolen)
För att rensa arv av MIME-typ krävs en XML-fil för att köra det associerade kommandot AppCmd.exe. Placera staticContentClear.xml-filen som visas nedan i samma mapp som skriptet Install.cmd för att uppnå det här resultatet.
Exempel på användning av parametern 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>
Testa SymProxy-installationen
Systemet bör nu vara redo att hämta och hantera filer. Om du vill testa det börjar du med att starta om IISAdmin-tjänsten genom att köra iisreset.exe. Detta läser in ISAPI-filtret igen med den aktuella IIS- och SymProxy-konfigurationen.
Konfigurera ett felsökningsprogram för att använda den här symbolsökvägen:
srv*\\MachineName\Symbols*https://MachineName/Symbols
Om MissTimeout- är aktiverat (det är inställt på 300 sekunder som standard) bör körningen av kommandot .reload /f två gånger resultera i mycket snabbare körning andra gången.
Om du vill visa platsen för de PDF-filer som refereras använder du kommandot lm (listmoduler). Sökvägen till PDB-filerna bör börja med \\MachineName\Symbols.
Om katalogbläddring är aktiverat på webbplatsen bläddrar du till https://MachineName/Symbols för att se de filer som cachelagras.
Öppna Prestandaövervakaren och visa räknare för symbolproxy.
Öppna Loggboken och visa händelserna Microsoft\Windows\SymProxy.