Problém s WordPress – Unable to create directory

Po delší době se zase začínají objevovat oblíbené chyby u WordPress Unable to create directory …. Už nějaký ten pátek jsem toto viděl jen na instalacích VPS, kde bylo nutné upravit nastavení chování serveru. Ovšem pokud zrovna váš webhosting nějakým záhadným způsobem upgradoval na novou verzi PHP s tím, že se změnilo rozložení práv je bohužel nutný manuální zásah.

Co znamená chyba Unable to create directory

V podstatě se WordPress snažil vytvořit adresář a server mu to nedovolil kvůli oprávnění. Tato chyba se objevuje například při nahrávání nových multimédii, automatické instalaci pluginů anebo šablon. Vše se stáhne ale skriptu prostě nejde vytvořit adresář.

Tuším, že jednou za tím byl i bezpečnostní plugin, který pro zvýšení ochrany WordPress upravil práva k adresářům takovým způsobem, že je pak nedokázal změnit zpět. Ovšem otázkou je jestli to byla chyba pluginu anebo feature webhostingu.

Atributy a oprávnění

Aby to fungovalo jak má je třeba nastavit práva u adresáře, kde se má další adresář (podadresář) vytvářet. Ty se nastavují podle atributů. V podstatě jsou to tři čísla. První jsou oprávnění uživatele, druhé skupiny a třetí pro svět. Jejich součet definuje, co mohou se souborem anebo v adresáři dělat. 4 – číst, 2 – zapisovat/upravovat, 1 – číst, zapisovat, mazat a upravovat. 6 je tedy (4 + 2)  číst a zapisovat/upravovat.

Ve WordPress by měly být atributy následovně (vycházíme z oficiálního kodexu):

  • Všechny adresáře 755 anebo 750.
  • Všechny soubory 644 anebo 640. S výjimkou wp-config.php ten by měl být 440 anebo 400.
  • Žádný adresář anebo soubor by neměl být 777

Jak to opravit

To co potřebujete je přihlásit se k serveru přes FTP klienta. Ideální je Total Commander anebo Filezilla. Pro oba je změnit atributy u souboru anebo adresáře hračka. Některé webhostingy používají i net2ftp anebo WebFTP, což je webová forma. Ovšem z bezpečnostních důvodů není zrovna ideální, zvláště pokud počítač používá i někdo jiný. Pokud už jej musíte použít tak určitě pak zablokujte FTP účet anebo vytvořte si nový.

Ok jakmile se připojíte k serveru tak zkontrolujte atributy u souboru/adresáře, který je problémový. Například když zlobí nahrávání médii tak koukněte do wp-content/uploads/. Jestli jste se nikdy nepřipojili přes FTP tak to bude horší a stojí za to zvážit asistenci podpory. Jinak to bude na delší dobu studování nějakého jejich návodu. Většinou je struktura kešzě www/nazevdomeny/.

Najděte si problémový soubor či adresář a koukněte se na jeho vlastnosti/atributy. Třeba u Total Commander je to Soubor – Atributy. Tam uvidíte tabulku. U adresáře nastavte 755. Změna se projeví okamžitě.

V naprosto nejhorší variantě, když všechno selže se dá na krátkou dobu změnit nastavení adresáře/souboru na 777. To umožní WordPress nahrát cokoliv kamkoliv, ale zároveň i měnit vše. Jedná se o bezpečnostní hrozbu. Takže jestli potřebujete jen nahrát novou šablonu, tak na omezenou dobu to můžete udělat i s těmito atributy.

Autor Ginoza

Pracuji na zákaznické podpoře jednoho známého webhostingu.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *