Popis: Prestashop 1.6 co indikuje bílá obrazovka? jak chybu ve skriptu odstranit?
Blog
-
pc-software
|
Napsal uživatel Admin
|
Pátek, 02 Prosinec 2016 00:00
|
bílá obrazovka (white screen) v prestashop
nastává při jisté akci (změně stavu objednávky v administraci (BO) např.) nebo i při pouhém vstupu na stránku
-
co indikuje bílá obrazovka?
chybu ve vykonávání skriptu
- proveĎte nejprve zálohu stávající databáze(MySQL)!
proveĎte nejprve zálohu stávajícího file(FTP) prostoru!
- dát obchod do offline podle toho kdy bílá obrazovka nastává
při zobrazení chybového hlášení dáváme HardOff lépe vždy
- SoftOff - nebudou se generovat nové objednávky, popř faktury
Produkty > Konfigurace Produkty : Režim katalogu x Ano Ne
- HardOff - nebude přístupná url obchodu, ani pro roboty, misto toho je stránka obchod se upravuje.
Údržba obchodu > Konfigurace Údržba obchodu : Povolit obchod Ano x Ne A nastavte si vlastní IP jako povolenou. Pokud je bílá obrazovka na hlavní straně obchodu i po zapnutí Údržba obchodu a nemůžete se nejspíš přihlásit do administrace, napojte zálohu dtb a obnovte soubory viz níže
- zobrazení chybového hlášení podle verze presta
how to turn error reporting on in prestashop 1.5.3+ v /config/defines.inc.php
/* Debug only */
define('_PS_MODE_DEV_',true);
A podle nyní se zobrazující hlášky jděte hledat na Internetu (Googlem) obecný text z hlášky. Tj vymažte např jméno vaší domény z umístění souboru, nebo ponechte jen začátek hlášky. Na začátek hledané fráze přidejte Presta a dodáte více relevantních výsledků. Podle vyhledané rady můžete pokračovat v místě hlášené chyby
-
jak chybu ve skriptu odstranit?
po každé změně ověřte zda chyba přetrvává, někdy je nutné i zavřít prohlížeč - vyčistit cache a cookies postup :
- v Presta BO vymazání a vypnutí cache stránek
Nástroje > Výkon : Vyčistit mezipaměť Nástroje > Výkon : Smarty Kompilace šablony Nikdy nepřekompilovat soubory šablon Překompilovat šablony, pokud byly soubory zaktualizovány x Vynucená kompilace Dočasná paměť (Cache) Ano x Ne
- v Presta BO vypnutí Neorig. mod a overrides
nástroje>výkon>Režim ladění (debugovací) : Zakázat neoriginální PrestaShop moduly x Ano Ne Zakázat všechna přepsání (overrides) x Ano Ne
- v File editoru a klientovi MySQL napojení tabulek dat ze zálohy do testovací databáze
ověření zda je chyba na databázi nebo v souborovém systému přestože zůstane tímto postupem stávající dtb nedotčená - pro jistotu proveĎte nejprve zálohu stávající databáze! Postup: v souboru /config/settings.inc.php, pokud jde o kopii stávající tabulky do nové databáze, měníme jen hodnoty define pro první 4 řádky dle této nové - testovací dtb
<?php
define('_DB_SERVER_', 'ip or server name wthout http://');
define('_DB_NAME_', 'name_dtb');
define('_DB_USER_', 'user_dtb');
define('_DB_PASSWD_', 'passw');
- ve FTP clientovi postupná obnova souborů ze zálohy
Pomůže pokud všechno ostatní selhalo a záloha je z dobrého stavu eshopu. Záloha file + záloha databáze ze stejného stavu (času, data) eshopu je nutná. proveĎte nejprve zálohu stávajícího file prostoru! Nejprve provedeme průzkum souborů podle data, dáme hledat změněné soubory od poslední zálohy do dnes např. pak.
Soubory postupně podle data a náležitosti s chybou nahrazujeme. Zvlátště v tučných adresářích je dobré prozkoumat hloubjeji, nahrazovat postupně.
adminxxx/ - administrace vč. admin themes classes/ - třídy podle událostí pro front(FO) i admin(BO) nerodělené config/ - sobory konfigurace prestashopu, pokud je tu časová změna controllers/ - pro front a admin odděleně css/ docs/ js/ - javaskripty localization/ - lokalizace, formát .xml mails/ - šablony a překlady pro ostatní emaily co nejsou v themes modules/ override/ - přepisy classes a controlers, dá se vypnout v BO pdf/ - šablony pdf themes/ - šablony FO, zajímejte se jen o tu co používáte, bývají tam umístěny (zpravidla jen některé soubory) aktivní tpl, moduly a šablony emailů např. tools/ translations/ webservice/ xml/
[SOLVED]
- chybu může způsobit i bílý znak ve skriptu, např při změně stavu objednávky v administraci, která vyvolávala odeslání emailu, se zobrazoval white screen.
- postupoval jsem podle výše
Ale Zapnutím debugg modu nedošlo k zobrazení zádné hlášky!
- V Bodu 3) "napojení tabulek dat ze zálohy do testovací databáze"
ověřeno, že databáze na vině není
- V Bodu 4) "soubory postupně podle data a náležitosti s chybou nahrazujeme"
zjištěno, že příčina v adresáři /themes/default-bootstrap/mails/ a dále zjištěno že v /themes/default-bootstrap/mails/cs/lang.php konkrétně na konci skriptu je nějaký bílý znak za
- vymazána bílá mezera a změna stavu objednávek v administraci je již funkční
chyba v souboru - bílý znak časově koresponduje s páden systému, kde na vině byla chyba na disku a nutný restart a oprava lokálního disku
Jiné zdroje informací
|
Aktualizováno Neděle, 05 Únor 2017 19:26
|