IIS ve PHP'nin yeni kurulumunda 500 hata


32

Windows server 2012 ve IIS'de bir PHP dosyasını çalıştırmayı denediğimde, 500 hatası alıyorum. Detaylı bir günlük veya başka bir şey bulamıyorum. Ancak, IIS için PHP Manager'a giderken ve config kontrolünü tıkladığınızda aşağıdaki hatayı alıyorum:

Detailed Error Information:
Module    FastCgiModule 
Notification    ExecuteRequestHandler 
Handler    PHP55_via_FastCGI 
Error Code    0xc0000135 
Requested URL    http://domain.com:80/brkld3ip.php 
Physical Path    drive:\sites\domain.com\brkld3ip.php 
Logon Method    Anonymous 
Logon User    Anonymous 

PHP'yi yeni bir Windows Server kurulumunda Microsoft Web Platform Installer 5.0 kullanarak kurdum.

Linux'tan gelen IIS konusunda yeniyim. Bu yüzden, IIS'de neler olup bittiğini bilecek kadar "öğrenilmiş" değilim. Birkaç web sitesi önerdiği gibi C ++ yeniden dağıtılabilir 2012 güncelleştirme 4'ü güncelleştirmeyi denedim. Başka fikri olan var mı?

EDIT: Kontrol ettiğim bir diğer şey hafıza sınırıydı. Bir site, hafıza limitimin arttırılması gerektiğini önerdi. Değişiklik yok.

EDIT: Soru: PHP değişikliklerinin yürürlüğe girmesi için Windows'un yeniden başlatılması gerekiyor mu?


PHP'nin hangi sürümü?
Kev,

Php 5.5'i bu Microsoft yükleyicisiyle kurduğumda da 5.3'ü yükledim.
alexander7567

Yanıtlar:


53

Çalıştırmakta olduğunuz PHP sürümü için doğru VC ++ çalışma zamanını kaçırmamanız oldukça iyi bir ihtimal.

PHP 5.5.x kullanıyorsanız, VC ++ 11 çalışma zamanının yüklendiğinden emin olmanız gerekir:

http://www.microsoft.com/en-us/download/details.aspx?id=30679

X86 sürümünü ( vcredist_x86.exe) indirip yüklediğinizden emin olun , Windows'ta PHP henüz 64 bit değildir.

PHP 5.4.x kullanıyorsanız, VC ++ 9 çalışma zamanını yüklemeniz gerekir:

http://www.microsoft.com/en-us/download/details.aspx?id=5582


1
Haklıydın. 64 bit bir makineden beri x64'ü zaten yaptım. X86'yı yükledi ve anında (yeniden başlatmaya gerek yok) çalışmaya başladı. Teşekkürler! Beynimi saatlerce salladım!
alexander7567

Parlak! Benim için de hemen düzeltildi. +1
Will Appleby

2
Teşekkürler! PHP 5.6 örneği, VC ++ 11 (VS 2012) çalışma sürelerini gerektiriyor
saat

Teşekkürler ! Başlangıçta x86 ile ilgili kısmı özledim ama sefil bir şekilde başarısız olduktan sonra neyi özlediğimi gördüm ve şimdi her şey yolunda gidiyor.
Alexandre Danault

5
PHP 5.6 ile bu sorunu yaşayan herkes için , aşağıdaki sayfadan elde edilebilen Visual Studio 2012 Güncelleme 4 (vcredist_x86.exe) için Visual C ++ Yeniden Dağıtılabilir x86 sürümüne ihtiyacınız vardır : microsoft.com/en-us/download/details .aspx? id = 30679
derekmx271

6

Benzer bir mesajla yakalandım ve CGI Sunucu Rolünü kurmadığım ortaya çıktı (IIS -> Uygulama Geliştirme altında).


Mesaj ne kadar benzer?
Geyik Avcısı,

VC ++ 11 çalışma zamanını yükledim ancak çalışmasını sağlamak için CGI desteği de yüklemeliydim. Windows 8.1 ve IIS 8.5’te. Altında bulunTurn windows features on or off > Internet information services > application development features > CGI
jxmallett

4

Aynı hatayı IIS 8.5 ile 2012 R2 sunucusunda PHP 7.0.3 için de kullandım.

Çözümün yüklenmesi: Visual Studio 2015 32bit için Visual C ++ Yeniden Dağıtılabilir

Bunu yükledikten sonra her şey düzgün çalıştı.


1

Yine de Visual Studio 2015 32 bit için Visual C ++ Yeniden Dağıtılabilir uygulamasını yükledikten sonra 500 hatası oluştu.

Microsoft sysinternals'dan procmon'u çalıştırdım ve php web sayfamı isterken bulundu

w3wp.exe C:\PHP\php-cgi.exe "ACCESS DENIED"

w3wp.exe, IIS altında çalışan uygulama havuzudur

Belirli uygulama havuzu kullanıcısına READ / EXECUTE izinlerinin c: \ php için verilmesi sorunu çözdü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.