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 | Ne 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.ini | Başka süreç veya site için aynı değer |
| Korumalı HTTP sürüm kontrolü | Gerçek sitenin kullandığı motor | Uygulamanı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
- Uygulamanın ihtiyaç duyduğu veritabanı, görüntü ve diğer PHP uzantılarını listeleyin.
- DLL dosyasının PHP dalı, mimari ve derleme türüyle uyumunu resmi paket bilgisi üzerinden kontrol edin.
- PHP hata günlüğünde yüklenemeyen uzantının adını ve bağımlılık hatasını bulun; rastgele DLL indirmeyin.
- 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.