Problem s robot loader, cache, permissions, hosting

- tomas.stofik
- Člen | 33
Zdravim Vas. Momentalne riesim tento problem uz asi na troch poslednych
verziach nette.
Ide o to ze nahodim len zakladny sandbox kde sa uvodna stranka zobrazi bez
problemu no ak sa snazim prejst na podstranku resp. nacitat iny ako Homepage
presenter stale Mi vyhodi tuto chybu:
fopen(/home/ftpuser/domainname/web/temp/cache/_Nette.RobotLoader/_9f51f4c05aa0288b218a6faa606c939b): failed to open stream: Permission denied
Vsetky subory vytvaram a kopirujem cez rovnaky suborovy manazer takze nehrozi
zamena prav ani nic podobne.
Doteraz som nemal potrebu nikdy na hostingu nastavovat permissions a stale to
fungovalo.
Tentokrat som ich aj zmenil no nepomohlo ani to.
No akonahle prejdem na iny presenter vytvoria sa v adresari cache subory ktore
nemozem mazat a upravit.
Mozem ich akurat citat. Ak sa ich snazim mazat vyhodi mi to chybu 550
(permission denied) cize nette vytvara subory ako keby pod svojimi
permissions.
Uz som presiel kopu vlakien na forach aj mimo nette no nic. Nikto sa s tymto
nestretol.
Niesom zaciatocnik no toto ma fakt prekvapilo ako nic :(
Budem velmi vdacny za kazdu radu.
Dakujem

- tomas.stofik
- Člen | 33
Ono to praveze ma pravo zapisu nakolko na uvodnej stranke sa nic nedeje.
Skor by som povedal ze ak sa vobec jedna o pravo zapisu tak jedine do
konkretneho suboru.
Proste ako keby by nette vytvorilo subory v cache s inymi permissions alebo
pod inym userom.
Ked sa subory v cache vytvoria nemozem s nimi uz robit nic. Jediny sposom
mazania na ktory som prisiel je iterovanie nad adresarom pomocou funkcie unlink,
ziadny iny sposob nefungoval (vratane striedania roznym file managerov).
MW napsal(a):
Podle hlasky to nemá pravo zapisu do Temp.. zkus tam nastavit 775 ..

- tomas.stofik
- Člen | 33
Presne toto je moj problem a ani nesnivam o tom co by to mohlo byt.
Req. checker presiel na 98% (akurat mi chyba podpora GD kniznice – ale to
s tym urcite nic spolocne nema)
Jedina cesta ako zmazat tie subory je pomocou php (unlink, rename, … ) iny
sposob som nenasiel.
Zda sa Mi to ako nepochopitelne a uz ma to trapi dost dlho, s obrovskou chutou
som sa pustil do testovania novych features v poslednych verziach a toto mi
takto pokasle den :(
Ma niekto z Vas aspon napad kde zacat hladat lebo som fakt bezradny.
Dakujem
Mysteria napsal(a):
Když už jsme u toho, neřešil jste někdo problém, že si u nějakých hostingů Nette vytváří cache a logy pod jiným userem, než když uploadujete normálně přes FTP, takže všechno funguje, ale ručně ty složky přes FTP nesmažete?

- n.u.r.v.
- Člen | 485
Máme to samé u našeho hostingu – vytvořím přes FTP složku temp a můžu ji jakkoliv upravovat a mazat, ale jakmile do ní zapíše php (není to problém nette, ale php-používá jiný účet), tak je konec – složku nesmažu, protože není prázdná a její obsah nesmažu, protože nemám práva…
Musím použít php script, který to smaže:
<?php
function removeDir($path) {
$path = rtrim($path, '/') . '/';
$items = glob($path . '*');
foreach ($items as $item) {
is_dir($item) ? removeDir($item) : unlink($item);
}
rmdir($path);
}
$base_folder = $_GET['adr'];
if(strpos($base_folder, '/temp')>0){//== '../temp'
removeDir('./' . $base_folder);
echo 'ok';
}else{
echo 'neplatny parametr!';
}
?>

- tomas.stofik
- Člen | 33
Vyzera ze tiez pomohlo, uz je to ok ked prechadzam po strankach. Velmi pekne dakujem za usetrene nocne hodiny ludia :)