Select Page

Chceš na svoj nový WordPress web nahrať obrázok (upload), alebo tému, ale zobrazí sa Ti takéto upozornenie:

Unable to create directory wp-content/uploads/2019/12. Is its parent directory writable by the server?

Prvá možnosť je, že práva na úpravu súborov sú nastavené tak, že WordPress nemôže robiť zmeny. Ako to zmeniť?

  1. Prihlás sa na SFTP/FTP.
  2. Nájdi priečinok wp-content
  3. Klikni naň pravým klikom a zvoľ File permissions. Niektorí FTP klienti to majú inde, napr. pri Cyberducku treba kliknúť pravým, vybrať Info a až tam sa nachádzajú File permissions.
  4. Zmeň file permissions na 744, resp. 755. Dajú sa použiť obe varianty. Ďalej zvoľ možnosti: Recurse into subdirectories a Apply to directories only. Niektorí FTP klienti to majú ako možnosť, ktorú sa dá označiť, v mojom prípade sa mi po stlačení tlačidla otvorili pop-up okná, ktoré sa ma na tieto možnosti spýtali.

Čo ak to nepomohlo?

Možno server nemá nastavené vlastníctvo súborov (file ownership) na Tvojho wordpress usera. Čo to je a ako to zmeniť?

  1. Prihlás sa cez konzolu na server
    ssh nazovservera.com -l meno-usera
    A zadaj heslo, samozrejme.
  2. Premiestni sa do foldera s WordPress súbormi (napr. ak je web vo foldri “wordpress”, tak zadaj cd wordpress)
  3. Pozri si, kto je owner a kto skupina, príkazom ls -al. Každý súbor sa zobrazí nejak takto:
    -rw-r--r-- 1 wordpress apache 420 Nov 30 2017 index.php
    drwxr-xr-x  9 wordpress apache  4096 Nov 12 20:31 wp-admin
    Prvý znak si nevšímaj. Tie ďalšie sú vždy v skupinách po troch. Ich význam je nasledovný: r = read, = write, x = execute. Potom nasleduje číslo a za ním názov ownera a názov skupiny. V mojom príklade je owner „wordpress“ a group je „apache“. To, čo chceš, je, aby owner bol user Tvojho webu a group aby bol server. Dajme tomu, že by to bolo takto -rw-r--r-- 1 apache apache 420 Nov 30 2017 index.php – ako to zmením?
  4. Presuniem sa o folder vyšši cd ..
  5. Použijem príkaz chown (change ownership – zmeniť majiteľa). Použijem aj -R, čo znamená „rekurzívne“. A chcem to zmeniť vo foldri „wordpress“ s mojím webom.
    chown -R wordpress:apache ./wordpress

Hotovo.

Zdroje: