IIS 7.5'te aşağıdakilerden oluşan basit bir dağıtım sistemimiz olan bir sorunla karşılaştık:
Üç klasörden oluşan yeni bir webroot zip dosyası oluşturun:
Api
Site
Manager
Bu, yeni bir klasöre açılır (diyelim ki "SITE_REV1" diyoruz) ve aşağıdakileri çağıran bir komut dosyası içeriyor (her webroot için bir tane):
C:\Windows\system32\inetsrv\appcmd set vdir "www.site.com/" -physicalPath:"SITE_REV1\Site"
Bu genellikle 9/10 kez çalışır. Bazı durumlarda, webroot doğru bir şekilde güncellenmiş gibi görünüyor (IIS Yöneticisi'nde temel ayarları incelersem, yol doğru görünüyor), ancak söz konusu çalışan site aslında eski konuma işaret ediliyor. "Düzeltmeyi" başardığımız tek yol IIS sıfırlaması kullanmaktır. Söz konusu uygulama havuzunu geri dönüştürmek yeterli değildir.
Bazen yeniden başlatma yapmak bile gerekebilir, ancak bunun doğru olduğundan% 100 emin değilim (sorunu her zaman kendim çözmedim).
Komut dosyasını, appcmd'de bir aksaklık olduğunu umarak Powershell ve Web-Yönetim modülünü kullanarak yeniden yazdım, ancak aynı sorun ortaya çıkıyor.
Set-ItemProperty "IIS:\Sites\www.site.com" -Name physicalPath -Value "SITE_REV1\Site"
Kimse böyle bir şey yaşadı mı? Neler olup bittiğine dair bir ipucu var mı ve bu sorunu önlemek için neler yapabilirim? IIS sıfırlaması yapmak bizim için gerçekten iyi bir seçenek değildir, çünkü değişiklikleri tek bir sitede her denemeye ve dağıtmaya çalıştığımızda sunucudaki tüm siteleri etkiler.
DÜZENLEME: IIS Yöneticisi'nde sitenin başlatılması / durdurulması (uygulama havuzu DEĞİL) hatalı fiziksel yolu çözdüğünü belirledik, ancak siteyi appcmd kullanarak durdurursam, fiziksel yolu değiştirir ve başlatırsam, yine de aynı konular. Boştayım ...