Autor Zpráva
mafos
Profil
Dobrý den,

přeinstalovával jsem server (starý mám pořád funkční taky, takže nová instalace na novém stroji). Vše se mi podařilo přeinstalovat, vše funguje, jen jedna jediná stránka nejede. Je to e-shop na prestashopu. Vše (včetně DB) jsem překopíroval po síti a dal ve stejné podobě na nový server. Bohužel prestashop nenaběhne a zobrazuje se pouze prázdná stránka. Na googlu se mi nepodařilo nic najít, proto se obracím o pomoc na Vás. V error logu stránky vidím toto:

[Fri Jan 03 09:14:47 2014] [warn] [client 5.10.83.9] mod_fcgid: stderr: PHP Fatal error:  Uncaught exception 'PrestaShopException' with message 'Shop not found' in /var/www/clients/client0/web15/web/classes/shop/Shop.php:370
[Fri Jan 03 09:14:47 2014] [warn] [client 5.10.83.9] mod_fcgid: stderr: Stack trace:
[Fri Jan 03 09:14:47 2014] [warn] [client 5.10.83.9] mod_fcgid: stderr: #0 /var/www/clients/client0/web15/web/config/config.inc.php(94): ShopCore::initialize()
[Fri Jan 03 09:14:47 2014] [warn] [client 5.10.83.9] mod_fcgid: stderr: #1 /var/www/clients/client0/web15/web/index.php(28): require('/var/www/client...')
[Fri Jan 03 09:14:47 2014] [warn] [client 5.10.83.9] mod_fcgid: stderr: #2 {main}
[Fri Jan 03 09:14:47 2014] [warn] [client 5.10.83.9] mod_fcgid: stderr:   thrown in /var/www/clients/client0/web15/web/classes/shop/Shop.php on line 370

Server jede na debian 7.3.0, apache, mysql, ispconfig.

Nesetkali jste se prosím někdy s tímto problémem? A jak jste jej případně řešili? Už se s tím docela dlouho trápím a pořád bez výsledku :-(

Děkuji
anonymníí
Profil *
mafos:
chyba je popsána na prvním řádku, nezměnila se ti verze PHP? Nastavení PHP? Podívej se na daný řádek, na definice té funkce, která je volaná, ...
mafos
Profil
Dobrý den,

posílám část kódu i s řádkou 370

 else
                {
                        $shop = new Shop($id_shop);
                        if (!Validate::isLoadedObject($shop) || !$shop->active || !$id_shop)
                        {
                                // No shop found ... too bad, let's redirect to default shop
                                $default_shop = new Shop(Configuration::get('PS_SHOP_DEFAULT'));

                                // Hmm there is something really bad in your Prestashop !
                                if (!Validate::isLoadedObject($default_shop))
řádek 370                                       throw new PrestaShopException('Shop not found');

                                $params = $_GET;
                                unset($params['id_shop']);
                                if (!Configuration::get('PS_REWRITING_SETTINGS'))
                                        $url = 'http://'.$default_shop->domain.$default_shop->getBaseURI().'index.php?'.http_build_query($params);
                                else
                                {

A vypadá to, že na novém serveru je PHP 5.4 zatímco na starém byla mám dojem 5.3. Mohlo by to být tím?
Davex
Profil
mafos:
Vypadá to, že se nedaří inicializovat $shop = new Shop($id_shop); a těžko říct proč. Na novém serveru je asi něco jinak. Zkus si zapnout zobrazování chyb a varování PHP, které by mohlo napovědět.
mafos
Profil
Takže jsem zkusil nainstalovat starší PHP (nový ispconfig podporuje výběr z více verzí PHP) a bohužel tím to nebylo :-( A při zapnutí chyb v php jsem zjistil, že to nezobrazí ani jednu jedinou chybu (divný co?), jediné chyby jsou tedy pouze v logu a jsou stále stejné :-(
Davex
Profil
mafos:
Nemá Prestashop debug mód nebo tak něco? Neznám ho, ale našel jsem tohle:

config/defines.inc.php
/* Debug only */
define('_PS_MODE_DEV_', true);
mafos
Profil
OK, zkusím a dám vědět. Díky moc za pomoc.
mafos
Profil
Dobrý den,

omlouvám se za takovou časovou prodlevu.

Bohužel, ani debug mod nic nezobrazil :-( Napadá Vás ještě nějaká možnost řešení?

Děkuji
Davex
Profil
mafos:
Napadá Vás ještě nějaká možnost řešení?
Nalézt 10 rozdílů mezi původním a novým serverem. V konfiguraci operačního systému, webserveru, PHP, MySQL, v umístění souborů, právech, kdekoliv.
mafos
Profil
Tak tedy vyřešeno :-) A přitom taková blbost :-)

Nechápu jak je to možné, ale špatně se překopírovala databáze. A to jsem kopíroval ze složky /var/lib/mysql do stejné složky. Dneska jsem nastartoval starý server, překopíroval databázi z administrace prestashopu (myadmin už nefungoval) a nahrál na nový server a už to jede.

Děkuji Vám za pomoc.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: