2009-11-08 17 views
13

Niedawno mój dostawca Internetu przełączył naszą witrynę internetową na klaster o wysokiej dostępności usług IIS7.0. Witryna działa w PHP5.2.1 i mogę tylko przesyłać pliki (więc nie ma zmian w rejestrze). Przetestowałem wcześniej stronę internetową i wszystko wyglądało na działające, ale teraz strona zamówienia kończy się niepowodzeniem:Debugowanie 500 błędów wewnętrznego serwera w PHP działającym w klastrze IIS7

500 - Wewnętrzny błąd serwera. Występuje problem z zasobem, którego szukasz, i nie można go wyświetlić.

Z powodu komunikatów o błędach nie jest to zbyt pouczające. Próbowałem:

ini_set('display_errors', 1); 
ini_set('error_log', $file_php_can_write_to); 

, ale oba wydają się nic nie robić.

Ktoś wie, jak uzyskać lepsze wyniki debugowania?

Odpowiedz

30

Edytuj: Wygląda na to, że mamy similar question in serverfault. Sprawdź to

Wyłączenie niestandardowych błędów IIS7 pozwoli na wysyłanie odpowiedzi błędów z Twojej aplikacji do klientów zdalnych bez bycia ocenzurowanym przez moduł błędów niestandardowych IIS7.

Możesz to zrobić z narzędzia administracyjnego IIS7, uruchamiając "Start> Uruchom> inetmgr.exe", wybierając swoją stronę internetową/aplikację/katalog wirtualny w widoku drzewa po lewej stronie, klikając ikonę "Strony błędów", Kliknięcie „Edytuj ustawienia fabularny” akcja, a następnie wybierając opcję „Szczegółowe Błędy”

Source

+0

Właściwie używam przeglądarki Firefox. –

+0

To zmienia sytuację, ale teraz otrzymuję zwykły tekst: "Nie można wyświetlić strony, ponieważ wystąpił wewnętrzny błąd serwera." –

+2

+1 Używam tylko klasycznego aspa i wpadłem na to ... ta sama odpowiedź działa dla mnie. –

-4

IIS to robi, to naprawdę irytujące i nie mogłem znaleźć poprawkę, która jest, co spowodowało mnie, aby przełączyć się z serwerem Apache dla mojej lokalnej maszyny. Niestety, jeśli nie masz kontroli nad serwerem, najlepiej zrobić to albo lokalnie na konfiguracji apache albo poprosić swojego hosta, aby zezwolił na komunikaty o błędach.

Zrobiłem trochę googlowania, this to wygląda na to, czego potrzebujesz. Chciałbym, żeby to było, gdy próbowałem uruchomić IIS.

+0

Sam osobiście wolałbym Apache, ale nie jest to tak pomocne, jak może być odpowiedź. – icedwater

+1

Sugerowanie alternatywnego serwera WWW nie jest zbyt pomocne. Co się stanie, jeśli PO nie będzie mieć takiej kontroli? – Clarkey

1

To bardzo często, gdy zmieniasz serwer, nie możesz załadować swoich aplikacji. Mam rozwiązać ten problem z uruchomieniem php.exe Zamiast ładować swoje aplikacje w przeglądarce:

1) Uruchom go za pomocą wiersza polecenia > C:\php\php.exe LUB

2) uruchomiony Windows Explorer, patrzeć na niego, a następnie dwukrotnie kliknij na c:\php\php.exe.

3) Zobaczysz, jakie konflikty DLL powodują konflikty i powodują błąd 500.

4) Rozwiąż konflikty, znajdując odpowiednie biblioteki DLL dla twojej wersji Windows, i powinieneś widzieć swoje aplikacje przez przeglądarkę.

Najlepsze od lasek.

Powiązane problemy