Pro kopírování souborů na FTP používám ve Windows Total Commander nebo WinSCP. V prostředí OS X jsem si po čase vybral jako svého favorita souborového správce ForkLift. Kvůli jeho občasným problémům s některými servery používám ještě Cyberduck. V OS X a Linuxu používám pro kopírování na FTP Midnight Commander.
Se žádným z výše uvedených programů se mi nikdy nestalo, že by se soubory zkopírovaly na internet se špatně nastaveným oprávněním. Tedy s jednou výjimkou při kombinaci Linux, Midnight Commander a HostGator.
Proto jsem také dlouho nechápal, jak se může stát, že má někdo problémy s kopírováním souborů Drupalu či jiného redakčního systému na webhosting WEDOS. Pravda je taková, že se to může stát velice snadno a na první pohled není jasné, kde je problém.
Identifikace chyby
Problém se špatně nastaveným oprávněním souborů vaší PHP aplikace či přímo redakčního systému jako je Drupal, se projeví tím, že se podivně poškodí téma vzhledu, například tím, že v něm nefunguje JavaScript. V Drupalu nefungují některé části administrace. V některých svých částech se však web tváří, že funguje úplně normálně.
Problém s právy k souborům zjistíte velice jednoduše. Spusťte si Firefox s doplňkem Firebug nebo webový prohlížeč Chrome. Ve Firefoxu klepněte pravým tlačítkem myši do prázdné stránky a vyberte funkci Prozkoumat prvek ve Firebugu. Poté se přepněte na kartu Konzole. V případě Chrome je to podobné, stejně jako v Internet Exploreru.
Nyní si načtěte svou problémovou stránku. Jestliže uvidíte hlášení o tom, že nelze načíst některý soubor, který na FTP v dané cestě očividně je, pak se s největší pravděpodobností jedná o problém s oprávněními. V případě Drupalu a nenačtených obrázků je ještě třeba eliminovat problém s nezobrazováním obrázků tím, že zakomentujete obsah souboru .htaccess ve složce se soubory, což je ale problém, který nesouvisí s tímto článkem.
Řešení?
Včera jsem se do výše popsané pasti dostal sám a chvíli jsem skutečně netušil, kde je problém. Po aktualizaci Maxiorla se stránky začaly zobrazovat rozbité. Přisuzoval jsem to nutnosti vyprázdnit cache po aktualizaci, což nepomohlo. Přes Firebug jsem následně zjistil, že je problém s načítáním souborů ze složky misc a vše mi došlo.
Zkoušel jsem v OS X nového FTP klienta, protože Forklift má s WEDOSem občas problém a Cyberduck chce na tak malou aplikaci strašlivé množství paměti. A nový FTP klient z nějakého důvodu při kopírování špatně nastavil oprávnění k souborům a složkám.
Asi nejrychlejším řešením je v tomto případě smazání všech dotčených složek a souborů a jejich překopírování z počítače v jiném, ověřeném FTP klientovi. Pokud nechcete nic mazat, můžete zkusit upravit jednotlivé složky, ze kterých vaše webová aplikace načítá kód, na oprávnění 750. Souborům v těchto složkách nastavte chmod 640.
Jak vidíte, použití Firebugu nebo konzole v Chrome je dobré znát i v případě, že nekódujete CSS a neprogramujete v JavaScriptu. Zobrazí vám totiž spoustu užitečných informací i v jiných případech.
Tvůrce webů z Brna se specializací na Drupal, WordPress a Symfony. Acquia Certified Developer & Site Builder. Autor několika knih o Drupalu.
Web Development Director v Lesensky.cz. Ve volných chvílích podnikám výlety na souši i po vodě. Více se dozvíte na polzer.cz a mém LinkedIn profilu.
Podobné články
Komentáře k článku
Na chatu hostingu mi řekli, že stále měním oprávnění. Začal jsem používat Total Commander a PsPad na rychlou změnu např.: CSS. Nevím kudy na to jít. Ve FZ mi to vypisuje oprávnění 640, v TC taky v PsPadu když upravuji jen CSS mám 750, tak nevím jak tomu mám rozumět.
Takže, když změníte CSS v PSPadu, tak se mu z 640 stane 750? Nebo to i po uložení Total Commander i PSPad zobrazují odlišně?
Pro řešení problémů s právy používám v administraci webhostingu WEDOS nabídku Nástroje, ve které je tlačítko Opravit práva souborů. Je to rychlé a prozatím bezproblémové...
Dobrý tip!
Zajímavý článek, který určitě hodně uživatelům pomůže.
Já osobně jsem se s tímto problémem dříve také setkal a byl jsem z toho na prášky. Vždy jsem používal Total Commander, ale z nějakého důvodu mně to začalo dělat tyto problémy.
Proto jsem hledal jiné řešení a po používání programu FilleZilla je vše bez problémů, takže kdo má tyto problémy vyzkoušejte Fille Zillu.