IIS PHP sürümü ve php.ini sorunlarını teşhis etme

PHP güncellendiği halde site eski sürümü kullanıyorsa önce IIS’in hangi yürütülebilir dosyayı çağırdığını bulun. Terminal çıktısı, dosya sürümü ve gerçek web isteği üç ayrı kanıttır; birbirinin yerine kullanılmamalıdır.

Hazırlayan: AdaPanel · Güncellendi:

Aynı sunucudaki PHP kurulumlarını ayırın

Bir Windows sunucusunda uygulama paketi, sistem PATH kaydı ve IIS FastCGI eşlemesi farklı PHP klasörlerine işaret edebilir. Sorun yaşayan sitenin adını, havuzunu, işleyici eşlemesini ve mutlak PHP yolunu kaydedin. Çalışan diğer siteleri değiştirmeden önce bu bağımlılık haritasını çıkarın.

AdaPanel’de bileşen sürümünün güncel görünmesi önemli bir işarettir; ancak siteye özel bir eski eşleme bulunabilir. Önce ilgili siteyi ölçün, sonra gerekirse yalnız o eşlemeyi düzeltin. Bütün PHP klasörlerini silerek teşhis yapmayın.

Üç ölçümün anlamı

Üç ölçümün anlamı
ÖlçümNe söyler?Ne söylemez?
Mutlak yoldan PHP sürümüSeçilen dosyanın sürümüWeb isteğinin o dosyaya gittiği
Yüklenen yapılandırma yoluİlgili sürecin kullandığı php.iniBaşka süreç veya site için aynı değer
Korumalı HTTP sürüm kontrolüGerçek sitenin kullandığı motorUygulamanın bütün işlemlerinin doğru olduğu

php.ini değişikliği neden görünmez?

Yanlış dosyayı düzenlemiş, ek yapılandırma dosyasını gözden kaçırmış veya çalışan süreçte eski ayarı ölçmüş olabilirsiniz. PHP belgesindeki yapılandırma arama sırasını kendi kurulumunuzla karşılaştırın. Düzenlemeden önce etkin dosyanın yedeğini ve değiştireceğiniz anahtarın mevcut değerini alın.

Değişikliği ilgili süreçlere uygulamak için gereken kontrollü yeniden başlatmayı bakım planına dahil edin. Sonrasında aynı HTTP kontrolünü yeniden çalıştırın. Yalnız düzenlediğiniz metni okumak, etkin değerin değiştiğini kanıtlamaz.

Uzantı hatasını sürüm hatasından ayırın

  1. Uygulamanın ihtiyaç duyduğu veritabanı, görüntü ve diğer PHP uzantılarını listeleyin.
  2. DLL dosyasının PHP dalı, mimari ve derleme türüyle uyumunu resmi paket bilgisi üzerinden kontrol edin.
  3. PHP hata günlüğünde yüklenemeyen uzantının adını ve bağımlılık hatasını bulun; rastgele DLL indirmeyin.
  4. Bir veritabanı sorgusu veya görüntü işlemi gibi uzantıyı gerçekten kullanan küçük bir uygulama testi yapın.

Tanılamayı güvenli biçimde tamamlayın

Tam phpinfo çıktısı yolları ve ortam ayrıntılarını açığa çıkarabilir. Gerekli ölçümü erişim kontrollü, sınırlı çıktıyla yapın; geçici uç noktayı iş bitince kaldırın ve artık erişilemediğini doğrulayın.

Son kayıtta site adı, etkin PHP yolu, ölçülen sürüm, kullanılan ini dosyası ve uygulama test sonucu bulunsun. Hata devam ederse hangi katmanın çalıştığını belirten bu kayıt, tekrar tekrar aynı güncellemeyi denemekten daha yararlıdır.

Sık sorulan sorular

php -v yeni sürüm gösteriyor; IIS de güncel mi?

Kesin değil. PATH üzerindeki PHP ile IIS FastCGI yolu farklı olabilir. Site eşlemesini ve o siteye yapılan korumalı HTTP isteğini doğrulayın.

php.ini dosyasını değiştirmek yeterli mi?

Doğru dosyanın düzenlendiğini ve ilgili sürecin yeni değeri kullandığını ölçmek gerekir. Süreç yaşam döngüsünü ve ek yapılandırmayı da kontrol edin.

Bütün PHP klasörlerini kaldırmalı mıyım?

Hayır. Önce her site ve görevin hangi yolu kullandığını belirleyin. Kullanılan bir kurulumu silmek başka uygulamaları durdurabilir.

Tanılama sayfasını açık bırakabilir miyim?

Geçici tanılamayı kaldırın veya sıkı erişim kontrolü uygulayın. Genel erişime açık ayrıntılı PHP yapılandırması yayınlamayın.

Kaynaklar ve devamı

AdaPanel kurulum rehberi · Diğer rehberler

AdaPanel sürümlerini incele