2011-01-19 24 views
10


podczas aktualizacji drupala 6 do 7 Otrzymuję niezbyt pomocny komunikat "Witryna napotkała nieoczekiwany błąd. Spróbuj ponownie później." za każdym razem idę na pewne strony. ex)/admin/configDowiedz się, co jest przyczyną przerażenia "Witryna napotkała nieoczekiwany błąd. Spróbuj ponownie później." wiadomość

Jaki jest najlepszy sposób, aby dowiedzieć się, co powoduje błąd krytyczny, aby można go było naprawić?

Wszystko, o czym teraz myślę, to zacząć wyłączać przesłane moduły, dopóki ta strona nie będzie działać lub przeglądać logi.

Dzięki.

Odpowiedz

11

Po wyczyszczeniu dzienników pod numerem /admin/reports/dblog, a następnie ponownym wczytaniu uszkodzonej strony, z łatwością mogę zidentyfikować moduł powodujący obrażenia, gdy ponownie sprawdziłem dziennik.

Portal działa poprawnie teraz:)

+2

Jedyny problem z tym rozwiązaniem polega na tym, że gdy problem dotyczy samego watchdoga, to nie działa ... jak się dowiaduję. –

+0

Jeśli nie jesteś zalogowany, nie możesz wyświetlić/admin/reports/dblog, jeśli się zalogujesz, pojawi się błąd –

3

Zdecydowanie należy wyłączyć wszystkie moduły contrib w celu przeprowadzenia aktualizacji. Następnie włącz je po kilka za każdym razem, gdy zostaną zastąpione wersją D7. Podczas wymiany modułu należy wyczyścić cały katalog modułów, na wypadek gdyby pozostały stare pliki.

To powinno pomóc zawęzić problem i sprawdzić dziennik błędów php, jeśli coś tam znajdziesz. (Chociaż jest to zwykle w przypadku Białego Ekranu Śmierci).

0

Jak Győző wspomniano, jeśli nie jesteś w stanie zalogować się do serwisu, to może być trudne do debugowania.

Wtedy prawdopodobnie można spróbować

  1. Zaloguj się do bazy danych i uruchomić delete from watchdog;
  2. Odśwież stronę
  3. następnie wykonać zapytania do bazy danych select variables from watchdog;
  4. zwrócić uwagę na tekście pobliżu wiadomości
15

Jeśli dzienniki dlog/watchdog i php nie działają, spróbuj tego:

iść na /includes/error.inc komentarz linia linia 245

print theme('maintenance_page', array('content' => t('The website encountered an unexpected error. Please try again later.'))); 

i umieścić to

print theme('maintenance_page', array('content' => t('The website encountered an unexpected error. Please try again later.'.$fatal.' '.var_export($error,true)))); 

bardzo podobne, można umieścić var_export ($ error, true)) na koniec błąd

+3

Jest to bardzo przydatna sztuczka. Dzięki! – supermario

Powiązane problemy