Aplikace v Nette 2.0.10 – chyba 500
- kejlicz
- Člen | 201
Ahoj všichni.
Prosím o radu. Klientka má starou Nette aplikaci ( 2.0.10 ) běžící na PHP 5.4.45 na VPS lokálního poskytovatele. Klientka to chce přesunou jinam. Zkusil jsem první Wedos, kde mají tuhle verzi PHP. Mám zapnuté logování PHP chyb, debug mód a stále dostávám chybu 500 a v logu nic není. I když úplně smažu htaccess. K té chybě dochází někde, když se načítají třídy
$configurator->createRobotLoader()
->addDirectory(__DIR__)
->addDirectory(__DIR__ . '/../libs')
->register();
Nějak nevím, kde mám hledat, čím by to mohlo být.
Jak by jste postupovali Vy?
Díky za pomoc.
- kejlicz
- Člen | 201
CZechBoY napsal(a):
a v logu webserveru je co?
Původně jsem to zkoušel na Savaně, protože jsem myslel, že to chce PHP
5.3, které mám u jednoho starého účtu. Tam to dělalo to samé. tak jsem
to řešil s podporou a dobrali jsme se k tomu, že je to chyba webserveru a
že se to nedá pořádně zjistit.
Pak jsem si ale všiml, že půdovní VPS má PHP 5.4.45, tak jsem to dal na ten
wedos a předpokládal jsem, že tam ty logo webserveru taky nebudou, když je
to obyč hosting. Teď jsem ale koukal, že to u nich jde zapnout. Zapnul jsem
to tedy a logy by měly být přístupné přes FTP v adresáři logs/errorlog,
jenže já tam ten adresář ani po půl hodině nemám.
Ještě uvedu, že to dělám na hostingu u wedosu, ale nepřistupuju k tomu
přes doménu, ale přes interní asresu http://xxxx.xxx.wedos.ws/....... , pokud by to mohlo mít
nějaký vliv. Když tam ale vytvořím třeba v rootu php soubor, tak se
normálně provede, takže by to mělo fungovat.
Asi mám zkusit napsat na podporu, co?
Editoval kejlicz (9. 11. 2018 17:14)
- kejlicz
- Člen | 201
Zkusil jsem to hodit i na server, kde je PHP 5.6, jestli to náhodou nepojede. Taky hází chybu 500, ale z asi 10 pokus to jednou 500 nehodilo a hodilo to Laděnku, že došla pamět při zpracování RobotLoader.php na řádku 315, kde je toto
foreach (@token_get_all($code) as $token) { // intentionally @
if (is_array($token)) {
switch ($token[0]) {
case T_COMMENT:
case T_DOC_COMMENT:
case T_WHITESPACE:
continue 2;
case $T_NS_SEPARATOR:
case T_STRING:
if ($expected) {
$name .= $token[1];
}
continue 2;
case $T_NAMESPACE:
case T_CLASS:
case T_INTERFACE:
case $T_TRAIT:
$expected = $token[0];
$name = '';
continue 2;
case T_CURLY_OPEN:
case T_DOLLAR_OPEN_CURLY_BRACES:
$level++;
}
}
Asi budu muset zkusit odebrat všechny externí třídy, jestli to půjde a pak postupně přidávat.
- kejlicz
- Člen | 201
Já jsem ten projekt přebral, tak se v tom pomalu rozkoukávám. Composer
tam je, ale mPdf je tam natvrdo. Teď to potřebuju dostat do stavu, aby to šlo
přenést na jiný server.
Té chyby 500 jsem se po smazání mPdf zbavil. Teď zase zápasím s chybou
„No such file or directory“ při pokusu o připojení k DB, ale o tom
případně v dalším vlákně :-)
Editoval kejlicz (14. 11. 2018 14:03)