
🔐 Prawidłowe uprawnienia plików i folderów WordPress: pełny przegląd 755 i 644
Przenieśli Państwo stronę na hosting i wtyczki przestały się instalować. Albo pliki multimedialne nie ładują się przez panel administracyjny. Albo aktualizacja rdzenia kończy się błędem „Could not create directory". Brzmi znajomo?
Przyczyna prawie zawsze jest jedna: nieprawidłowe uprawnienia do plików i folderów. Serwer lokalny (OpenServer, MAMP) działa w imieniu bieżącego użytkownika Windows/macOS i wybacza wszystko. Produkcyjny hosting na Linuxie, nie. Każdy plik i katalog ma właściciela oraz trzy poziomy uprawnień i jeśli serwer WWW nie może zapisać danych w odpowiednim folderze, strona psuje się po cichu lub wyświetla niezrozumiały błąd.
Poniżej wyjaśniamy, czym naprawdę są 755 i 644, jak ustawić je raz dla całej strony przez FileZilla oraz które pliki wymagają szczególnego podejścia.
💡 Szybki przegląd:
- Co oznaczają liczby 755 i 644 oraz dlaczego 777 to dziura w zabezpieczeniach
- Jak masowo ustawić uprawnienia przez FileZilla w 2 krokach: najpierw foldery, potem pliki
- Jakie uprawnienia są potrzebne dla wp-config.php,.htaccess i folderu wp-content
- Jak zrobić to samo przez SSH jedną komendą w 5 sekund
Co oznaczają uprawnienia i dlaczego 777 to katastrofa
Każdy plik i folder na serwerze Linux przechowuje trzy zestawy uprawnień: dla właściciela, dla grupy i dla wszystkich pozostałych. Liczba to suma bitów: 4 (odczyt) + 2 (zapis) + 1 (wykonanie dla folderów = wejście do środka).
755 dla folderów oznacza: właściciel może wszystko (7), grupa i pozostali, czytać i wchodzić (5). Folder jest dostępny dla serwera WWW do skanowania, tworzenia w nim plików i podfolderów, ale nikt postronny nie może go usunąć ani zmienić nazwy.
644 dla plików: właściciel czyta i zapisuje (6), pozostali tylko czytają (4). Pliki PHP są wykonywane przez interpreter, a nie przez system, więc bit wykonania nie jest im potrzebny.
777 (właściciel+grupa+inni = wszystko) to otwarte drzwi. Każdy proces na serwerze, w tym skrypty sąsiednich stron na hostingu współdzielonym, może czytać, modyfikować i usuwać Państwa pliki. Według danych WPScan za 2025 nieprawidłowe uprawnienia należą do pięciu najczęstszych wektorów włamań na WordPress na hostingach współdzielonych. Nigdy nie należy ustawiać 777; jeśli wtyczka lub motyw wymaga takich uprawnień, jest to czerwona flaga.
Jakie uprawnienia WordPress uznaje za prawidłowe
Oficjalna dokumentacja WordPress definiuje zalecane uprawnienia następująco:
Zasób | Uprawnienia | Dlaczego |
|---|---|---|
Foldery (wszystkie poziomy zagnieżdżenia) | 755 | Serwer WWW musi wchodzić i tworzyć pliki wewnątrz |
Pliki.php,.js,.css i pliki multimedialne | 644 | Odczyt dla wszystkich, zapis tylko dla właściciela |
| 600 lub 440 | Zawiera hasła do bazy danych, odczyt tylko dla właściciela |
| 644 | Odczytywany przez Apache, ale nie powinien być dostępny z zewnątrz |
Na większości hostingów właściciel systemu plików pokrywa się z użytkownikiem, od którego działa PHP (konfiguracja suPHP/FastCGI + suEXEC). W takiej konfiguracji uprawnienia 755/644 są wystarczające: WordPress może zapisywać dane w wp-content/uploads, aktualizować rdzeń i wtyczki, instalować motywy bez eskalacji do 777.
Proszę sprawdzić, czy to odpowiada Państwa hostingowi: proszę wejść do panelu administracyjnego → spróbować zainstalować dowolną bezpłatną wtyczkę. Jeśli zainstalowała się bez pytania o dostęp FTP, oznacza to, że schemat 755/644 działa i uprawnienia są już prawidłowe.
Jak ustawić uprawnienia przez FileZilla: krok po kroku
FileZilla to bezpłatny klient FTP, który potrafi masowo, rekurencyjnie zmieniać uprawnienia. Proszę pobrać go z oficjalnej strony, jeśli jeszcze go Państwo nie mają.
Krok 1: łączymy się i wchodzimy do katalogu głównego WordPress
Proszę połączyć się z hostingiem przez FTP (login/hasło, te same co do konta hostingowego, port 21). Na prawym panelu proszę przejść do folderu głównego strony. Tam, gdzie znajdują się wp-config.php, wp-content, wp-admin i wp-includes.
Krok 2: ustawiamy 755 na wszystkie foldery
Proszę zaznaczyć wszystkie pliki i foldery w katalogu głównym (Ctrl+A). Prawy przycisk myszy → „Uprawnienia pliku".

W oknie, które się otworzy, w polu „Wartość numeryczna" proszę wpisać 755. Proszę zaznaczyć checkbox „Przekieruj do podkatalogów". Przełącznik proszę ustawić w pozycji „Zastosuj tylko do katalogów". Proszę kliknąć OK.

FileZilla przejdzie przez każdy folder i podfolder strony i ustawi 755. Proces trwa od kilku sekund do kilku minut w zależności od rozmiaru strony.
Krok 3: ustawiamy 644 na wszystkie pliki
Ponownie proszę zaznaczyć wszystko w katalogu głównym (Ctrl+A), ponownie prawy przycisk myszy → „Uprawnienia pliku".
Teraz proszę wpisać 644. Proszę zaznaczyć „Przekieruj do podkatalogów". Przełącznik, „Zastosuj tylko do plików". OK.

Gotowe. Dwa podejścia, foldery i pliki, i cała strona jest doprowadzona do standardu.
Szybki sposób przez SSH: polecenie find
Jeśli mają Państwo dostęp SSH do serwera, tę samą operację wykonuje się dwoma poleceniami w pięć sekund:
1 find /path/to/wordpress -type d -exec chmod 755 {} \; 2 find /path/to/wordpress -type f -exec chmod 644 {} \;
Pierwsze przechodzi przez wszystkie foldery (-type d) i ustawia 755. Drugie, przez wszystkie pliki (-type f) i ustawia 644. Proszę zastąpić /path/to/wordpress rzeczywistą ścieżką do katalogu głównego strony (zazwyczaj /home/username/public_html).
Następnie proszę osobno wzmocnić wp-config.php:
1 chmod 600 /path/to/wordpress/wp-config.php
Oraz .htaccess, jeśli go Państwo mają (serwer Apache):
1 chmod 644 /path/to/wordpress/.htaccess
Jeśli strona jest na Nginx, plik .htaccess nie istnieje, ten krok proszę pominąć.
Co robić, jeśli uprawnienia ponownie się psują
Sytuacja: ustawili Państwo 755/644, wszystko działało, a po tygodniu ten sam błąd. Przyczyną najczęściej jest proces działający z innego użytkownika.
Typowi winowajcy:
- Zadania cron hostingu. Niektóre firmy hostingowe uruchamiają skrypty konserwacyjne z konta root, a one tworzą pliki z uprawnieniami, których serwer WWW nie może potem nadpisać. Rozwiązanie: proszę poprosić pomoc techniczną o skonfigurowanie crona w imieniu Państwa użytkownika.
- Zewnętrzna wtyczka do kopii zapasowych. Zapisuje zrzuty i archiwa w
wp-contentw imieniu użytkownika, na którym jest uruchomiona. Proszę sprawdzić logi wtyczki; jeśli tworzy pliki nie w imieniu właściciela strony, proszę ją zastąpić alternatywą. - Wtyczka buforująca. Tworzy foldery cache z nieprawidłowymi uprawnieniami. Proszę wejść w ustawienia wtyczki i znaleźć przycisk „Wyczyść cache" lub „Reset uprawnień".
Uniwersalna szybka naprawa: powtórzyć procedurę z sekcji powyżej (FileZilla w 2 krokach lub dwa polecenia find). Nie rozwiąże to pierwotnej przyczyny, ale przywróci stronę do działania.
⁉️🤔 Często zadawane pytania
Co robić, jeśli po zmianie uprawnień strona padła z „białym ekranem śmierci"?
Biały ekran (WSOD) po masowej zmianie uprawnień to niezwykle rzadka sytuacja, ale możliwa. Po pierwsze: proszę włączyć
WP_DEBUGwwp-config.php, dzięki temu zobaczą Państwo tekst błędu zamiast białego ekranu. Po drugie: proszę sprawdzić, czy nie ustawili Państwo 644 na foldery (foldery potrzebują bitu wykonania, czyli 5 na końcu). Proszę to poprawić jednym poleceniemfind:find /path -type d -exec chmod 755 {} \;, to wystarczy w większości przypadków. Jeśli strona nie zadziała, proszę przywrócić kopię zapasową i zmieniać uprawnienia stopniowo: najpierw nawp-content, potem na katalog główny, obserwując reakcję.
Czy można ustawić uprawnienia przez wbudowany menedżer plików hostingu?
Tak, ale tylko dla pojedynczych plików i folderów. Hostingi cPanel oferują File Manager z opcją „Change Permissions" w menu kontekstowym. Jednak rekurencyjne ustawienie uprawnień na setki i tysiące plików przez interfejs WWW jest praktycznie niemożliwe; do operacji masowej proszę użyć FileZilla lub SSH.
Jakie uprawnienia powinien mieć folder wp-content/uploads?
Standardowe 755, jak wszystkie inne foldery. Jeśli wtyczka lub motyw tworzą podfoldery wewnątrz
uploadsi mają problemy, proszę sprawdzić właściciela procesu (powinien pokrywać się z właścicielem folderu), a nie podnosić uprawnienia do 777. Czasami problem rozwiązuje dodaniedefine('FS_METHOD', 'direct');wwp-config.php.
Czy trzeba ustawiać uprawnienia na pliki wewnątrz wp-admin i wp-includes?
Tak, standardowe 644 dla plików, 755 dla folderów, tak jak dla całej reszty strony. Procedura z FileZilla (zaznaczenie wszystkiego w katalogu głównym) obsługuje je automatycznie.
Hosting wymaga 777 na jakieś foldery, czy to normalne?
Nie. Wymóg 777 to oznaka, że PHP na serwerze działa od użytkownika innego niż właściciel plików (na przykład mod_php bez suEXEC). W takiej konfiguracji WordPress nie może zapisywać danych w folderach bez „publicznego" dostępu. Opcje: zmienić hosting na taki, który używa suPHP/FastCGI (większość nowoczesnych) lub dodać
define('FS_METHOD', 'direct');wwp-config.php, w części przypadków to wystarczy.
Prawidłowe uprawnienia to fundament, a nie opcja
Ustawienie 755 na foldery i 644 na pliki zamyka najczęstszy kanał „niezrozumiałych" błędów podczas przenoszenia strony. Dwie minuty w FileZilla lub dwa polecenia w SSH oszczędzają godziny wpatrywania się w logi.
Jeśli strona jest na dobrym hostingu z suPHP/FastCGI, te uprawnienia wystarczą do wszystkiego: instalacji wtyczek, przesyłania multimediów, automatycznej aktualizacji rdzenia. Proszę nie podnosić uprawnień do 777, nawet jeśli wymaga tego instrukcja do starej wtyczki. I proszę dodać wp-config.php osobnym wpisem: chmod 600, znajduje się w nim hasło do bazy danych, dostęp osób postronnych nie jest tam potrzebny.



