Jūsu vietne rāda tukšu, baltu lapu vai teikumu «Jūsu vietnē ir radusies kritiska kļūda.» Abos gadījumos PHP kaut kur ir ierakstījis precīzu ziņojumu, kas nosauc vainīgo failu. Šajā ceļvedī parādīts, kur to izlasīt, kā to saprast un kāda darbība atbilst katram ziņojumam.
wp-config.php un pārlādējiet lapu ar kļūdu.PHP Fatal error failā wp-content/debug.log: faila ceļš nosauc vainīgo spraudni vai tēmu.debug.log.Tukša lapa visbiežāk ir PHP fatāla kļūda: kāds vietnes fails pieprasīja kaut ko neiespējamu, un izpilde apstājās, pirms kaut kas tika parādīts. Kopš WordPress 5.2 WordPress šīs kļūdas pārtver: tukšas lapas vietā tas parāda «Jūsu vietnē ir radusies kritiska kļūda.» un nosūta e-pastu uz vietnes administrācijas e-pasta adresi.
Lapa paliek pilnīgi balta dažos gadījumos: vecāka WordPress versija, kļūda, kas rodas pirms šī mehānisma ielādes, konstante WP_DISABLE_FATAL_ERROR_HANDLER ar vērtību true vai kešatmiņas spraudnis, kas rāda kļūmes laikā saglabātu tukšu lapu. Tālāk aprakstītā metode der visiem šiem gadījumiem.
Trīs darbības var pagaidīt, līdz kļūda ir izlasīta: WordPress pārinstalēšana, spraudņu dzēšana, vecas rezerves kopijas atjaunošana. Katra no tām var izdzēst iestatījumus vai nesenus datus, turpretī kļūdas ziņojums parasti pasaka, kuru komponentu deaktivizēt, neko nezaudējot.
Kad WordPress kļūdu pārtver, tas uz vietnes administrācijas e-pasta adresi nosūta ziņojumu ar tematu «[Vietnes nosaukums] Jūsu vietnē radusies tehniska problēma». Tas nosauc vainīgo spraudni vai tēmu un satur saiti, kas atver administrācijas paneli atkopšanas režīmā.
Pieslēdzieties vietnei ar SFTP vai caur hostinga pakalpojumu sniedzēja failu pārvaldnieku, atveriet wp-config.php saknes mapē un aizstājiet rindu define( 'WP_DEBUG', false ); ar šīm četrām rindām:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
Tās novieto virs komentāra, kas noslēdz faila rediģējamo daļu (/* That's all, stop editing! Happy publishing. */, angliski arī latviešu valodas WordPress instalācijā). Pārlādējiet lapu ar kļūdu un pēc tam atveriet wp-content/debug.log. WP_DEBUG_DISPLAY ar vērtību false patur ziņojumus failā, ārpus lapas, ko redz jūsu apmeklētāji.
Ja debug.log paliek tukšs vai neparādās, kļūdu ir reģistrējis pats PHP: meklējiet failu error_log vietnes saknes mapē vai mapē wp-admin, vai kļūdu žurnālu sadaļu hostinga vadības panelī.
Fatāla kļūda ietilpst vienā rindā: kļūdas veids, tās apraksts, pēc tam in un pilns faila ceļš ar rindas numuru. Ceļš ir visnoderīgākā informācija: wp-content/plugins/nosaukums/ norāda uz spraudni, wp-content/themes/nosaukums/ uz tēmu.
| Ziņojumā ir | Ko tas nozīmē | Darbība |
|---|---|---|
Call to undefined function vai Class "…" not found, mapē wp-content/plugins/spraudna-nosaukums/ | Spraudnis izsauc kodu, kura nav: nepabeigts atjauninājums, deaktivizēts spraudnis, no kura tas ir atkarīgs, vai PHP versija, ko tas neatbalsta. | Deaktivizēt šo spraudni, pēc tam to pārinstalēt vai atjaunināt. |
Allowed memory size of 268435456 bytes exhausted | Skripts pārsniedza PHP atvēlēto atmiņu, šeit 268 435 456 baitus jeb 256 MB. | Palielināt WP_MEMORY_LIMIT failā wp-config.php, hostinga pakalpojumu sniedzēja noteiktā limita robežās, un pēc tam noskaidrot, kas patērē tik daudz. |
PHP Parse error: syntax error, unexpected, failā functions.php on line 42 | Sintakses kļūda failā, ļoti bieži pēc izmaiņām, kas ar roku veiktas tēmas redaktorā. | Izlabot norādīto rindu vai atjaunot faila iepriekšējo versiju. |
Uncaught TypeError vai Uncaught ArgumentCountError, pēc PHP versijas maiņas | Komponents, kas rakstīts vecākai PHP versijai, kuru pašreizējā versija atsakās izpildīt. | Atjaunināt komponentu. Pagaidu risinājums: hostinga vadības panelī atgriezties pie iepriekšējās PHP versijas, līdz komponents ir aizstāts. |
Maximum execution time of 30 seconds exceeded | Apstrāde pārsniedza PHP atļauto ilgumu (max_execution_time). | Noteikt apstrādi (imports, rezerves kopija, attēlu ģenerēšana) un, ja tā ir likumīga, palūgt hostinga pakalpojumu sniedzējam palielināt limitu. |
define( 'WP_MEMORY_LIMIT', '256M' );
Pārdēvējiet ziņojumā minētā spraudņa mapi, piemēram, wp-content/plugins/spraudna-nosaukums par spraudna-nosaukums.off. WordPress spraudni vairs neatrod un pārstāj to ielādēt; tā iestatījumi paliek saglabāti datubāzē, un WordPress to deaktivizē, nākamreiz atverot spraudņu ekrānu.
Tēmas gadījumā tās mapes pārdēvēšana mapē wp-content/themes atkal padara pieejamu administrācijas paneli, taču apmeklētāji redz tukšu lapu, kamēr neviena tēma nav aktīva. Tūlīt atveriet Izskats > Tēmas: WordPress konstatē, ka aktīvā tēma ir bojāta, un atgriežas pie instalētas noklusējuma tēmas.
wp plugin list --status=active
wp plugin deactivate spraudna-nosaukums
wp theme list
wp theme activate twentytwentyfive
Pirmā komanda saglabā aktīvo spraudņu sarakstu, kas noder pirms jebkādas grupveida deaktivizēšanas. Ja WP-CLI pats apstājas pie kļūdas, pievienojiet komandai --skip-plugins --skip-themes: tad tas startē, neielādējot spraudņus un tēmu. Mapes wp-content/mu-plugins spraudņi ielādējas jebkurā gadījumā; ja kļūda nāk no kāda no tiem, pārdēvējiet tā failu.
Ja ziņojums nenorāda uz konkrētu komponentu, wp plugin deactivate --all deaktivizē visus spraudņus. Ja vietne atgriežas, aktivizējiet tos pa vienam, starp katru pārlādējot vietni: pēdējais aktivizētais pirms kļūdas atgriešanās ir vainīgais.
define( 'WP_DEBUG', false ); un noņemiet WP_DEBUG_LOG no wp-config.php.wp-content/debug.log: tas atrodas no tīmekļa pieejamā mapē, to var izlasīt jebkurš, un tajā ir servera ceļi.Ar Serenity by Simafri mēs izveidojam jūsu profesionālo tīmekļa vietni, mitinām to, nodrošinām to un uzturam to aktuālu. Jūs mums uzrakstāt, mēs parūpējamies par visu. Domēna vārds un darba e-pasts iekļauti.
Tāpēc, ka radusies PHP fatāla kļūda, visbiežāk spraudnī vai tēmā. WordPress to pārtver, parāda šo ziņojumu un uz vietnes administrācijas e-pasta adresi nosūta e-pastu ar saiti uz atkopšanas režīmu. Atkļūdošanas žurnāls sniedz kļūdas detaļas un nosauc vainīgo failu.
Pārbaudiet mēstuļu mapi un e-pasta adresi, kas norādīta sadaļā Iestatījumi > Vispārīgi. Bez e-pasta ieslēdziet atkļūdošanas žurnālu failā wp-config.php, izlasiet kļūdu failā wp-content/debug.log un pēc tam deaktivizējiet vainīgo komponentu, ar SFTP pārdēvējot tā mapi.
Spraudņu iestatījumi glabājas datubāzē, nevis spraudņa mapē, tāpēc tie saglabājas. Pārdēvēts spraudnis parādās kā deaktivizēts; atjaunojiet mapes sākotnējo nosaukumu un aktivizējiet spraudni spraudņu ekrānā, lai to atgūtu ar visiem iestatījumiem.
Kļūdainais komponents var ielādēties tikai administrācijas panelī, vai arī tur vajadzīgs vairāk atmiņas. WordPress administrācijas ekrāniem piemēro WP_MAX_MEMORY_LIMIT, bet publiskajai vietnei WP_MEMORY_LIMIT. Atkļūdošanas žurnāls abos gadījumos darbojas vienādi: ielādējiet administrācijas lapu ar kļūdu un pēc tam izlasiet debug.log.
Simafri
Parunāsim par jūsu ieceri
Pasakiet mums dažos vārdos, kas jums vajadzīgs: mēs jums ātri atbildam.
Paldies! Jūsu pieprasījums ir nosūtīts. Drīzumā ar jums sazināsimies.
Labāk e-pastu? Rakstiet mums uz support@simafri.com.