SymProxy Otomatik Yükleme

Aşağıdaki Install.cmd betiğiyle birlikte bu adımlar, SymProxy'nin varsayılan IIS yüklemesine yüklenmesini otomatikleştirmeye yardımcı olabilir. Bu adımları büyük olasılıkla ortamınızın belirli gereksinimlerine uyarlamanız gerekir.

  1. D:\SymStore\Symbols klasörü oluşturun.

    • Herkese Okuma Izni Ver

    • SymProxy Uygulama Havuzu kullanıcı hesabına Okuma\Yazma İzni Verin (Etki Alanı\Kullanıcı)

  2. D:\SymStore\Symbols öğesini Simge olarak paylaşın.

    • Herkese Okuma Izni Ver (veya daha belirgin olun)
  3. (İsteğe bağlı olarak) D:\SymStore\Symbols içinde index2.txt adlı boş bir dosya oluşturun.

  4. (İsteğe bağlı olarak) \system32\inetsrv\symsrv.yes %WINDIR%adlı boş bir dosya oluşturun. Bu, Microsoft Genel Sembol Deposu için EULA'yı kabul eder.

  5. Install.cmd parametrelerini belirleyin ve çalıştırın.

  6. Oluşturduğunuz sunucu adını kullanarak istemcilerin sembol yolunu yapılandırın.

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

Install.cmd betiği 3 parametre gerektirir:

  • Sanal Dizin yolu (örn. D:\SymStore\Symbols )
  • Kullanıcı adı (Uygulama Havuzu için)
  • Parola (Uygulama Havuzu için)

MIME Türü devralmayı temizlemek için, ilişkili AppCmd.exe komutunu yönlendirmek için bir XML dosyası gerekir. Bu sonucu elde etmek için aşağıda gösterilen staticContentClear.xml dosyasını Install.cmd betiğiyle aynı klasöre yerleştirin.

Örnek Install.Cmd parametre kullanımı:

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>    

SymProxy Yüklemesini Test Etme

Sistem artık dosyaları almak ve sunmak için hazır olmalıdır. Test etmek için, iisreset.exeçalıştırarak IISAdmin hizmetini yeniden başlatarak başlayın. Bu, ISAPI filtresini geçerli IIS ve SymProxy yapılandırmasıyla yeniden yükler.

Hata ayıklayıcısını şu sembol yolunu kullanacak şekilde yapılandırın:

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

MissTimeout etkinse (varsayılan olarak 300 saniye olarak ayarlanır), .reload /f komutunu iki kez çalıştırmak ikinci kez çok daha hızlı yürütmeye neden olmalıdır.

Başvurulmakta olan PDB'lerin konumunu görüntülemek için lm (list modules) komutunu kullanın. PDB'lerin yolu \\MachineName\Symbols ile başlamalıdır.

Web sitesinde dizine gözatma etkinleştirildiyse, önbelleğe alınan dosyaları görmek için https://MachineName/Symbols göz atın.

Performans İzleyicisi'ni açın ve Sembol Ara Sunucusu sayaçlarını görüntüleyin.

Olay Görüntüleyicisi'ni açın ve Microsoft\Windows\SymProxy olaylarını görüntüleyin.

Ayrıca bkz.

Kurulum SymProxy