Home Blog pc-software [SOLVED] PrestaShop 1.6 | whitescreen - bílá obrazovka

[SOLVED] PrestaShop 1.6 | whitescreen - bílá obrazovka

Popis: Prestashop 1.6 co indikuje bílá obrazovka? jak chybu ve skriptu odstranit?
Klíčová slova: prestashop, whitescreen, bílá obrazovka, solved
Hits: 613
Hodnocení uživatelů: / 1
NejhoršíNejlepší 
Blog - pc-software
Napsal uživatel Admin   
Pátek, 02 Prosinec 2016 00:00

bílá obrazovka (white screen) v prestashop

468-whitescreen

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

  1. co indikuje bílá obrazovka?

    chybu ve vykonávání skriptu
    1. proveĎte nejprve zálohu stávající databáze(MySQL)!
      proveĎte nejprve zálohu stávajícího file(FTP) prostoru!
    2. 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
    3. 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
  2. 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 :
    1. 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
    2. 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
    3. 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');
    4. 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