Jestem przyzwyczajony do obsługi stron z Apache, ale teraz jestem zmuszony do korzystania z serwera IIS.
Wiele moich stron PHP zwraca błąd 500 i nie mogę debugować, ponieważ IIS pomija komunikaty o błędach. Próbowałem ini_set('display_errors',1);
w kodzie, ale bezskutecznie.
Błędy są wyświetlane na niektórych stronach, ale nie na tej, którą chcę debugować, więc nie sądzę, że jest to globalne ustawienie PHP, ale raczej coś wspólnego z ustawieniami witryny dla tej witryny.
Nie mogę znaleźć jednoznacznej odpowiedzi na pytanie, jak włączyć wyświetlanie błędów PHP.
Znalazłem ten link, ale nie jestem pewien, gdzie znaleźć „ system.webServer-> httpErrors ”.
Jak mogę włączyć wyświetlanie błędów w PHP w IIS?
error_reporting
,log_errors
ierror_log
wszystko skonfigurowane w ten sposób, ale to nadal nie zalogowaniu błędy na stronie Joomla. Ta strona została skopiowana z serwera Apache. Zaimportowałem.htaccess
reguły do IIS 7.5; ale niestety to wciąż zawodzi. Czy przypadkiem masz pojęcie, na co jeszcze powinienem się zwrócić?Zakładając, że masz wszystkie właściwe ustawienia w swoim pliku php.ini
Dzięki ostatniemu komentarzowi na tej stronie
źródło
Dowiedziałem się, że dobrym pomysłem jest uzyskanie dostępu do strony hostowanej w IIS za pomocą InternetExplorer w celu przetestowania.
W moim przypadku php-error-logs były czyste - nie dostały od tego żadnych wskazówek.
Podczas połączenia z firefox / chrome otrzymałem zwykły, nieekspresyjny komunikat „500 - wewnętrzny błąd serwera”:
... ale bardziej użyteczny komunikat o błędzie („Błąd HTTP 500.0 - Błąd wewnętrzny serwera C: \ PHP \ php-cgi.exe - Nieoczekiwanie zakończono proces FastCGI”) podczas korzystania z InternetExplorer:
Może spróbuj także połączyć się z http: // localhost na samym serwerze.
źródło