Zaufane samouczki WordPress, kiedy ich najbardziej potrzebujesz.
Przewodnik dla początkujących po WordPressie
WPB Cup
25 milionów+
Witryny korzystające z naszych wtyczek
16+
Lata doświadczenia z WordPressem
3000+
Samouczki WordPress od ekspertów

Jak zapobiec nadpisywaniu pliku .htaccess przez WordPress

Jeden z naszych czytelników zapytał nas ostatnio, czy można zapobiec nadpisywaniu przez WordPress własnego kodu w pliku .htaccess. Jest to częsta obawa, ponieważ WordPress i różne wtyczki często dodają własne ustawienia do tego pliku konfiguracyjnego.

Jeśli dodałeś niestandardowy kod do .htaccess, zrozumiałe jest martwienie się o jego nadpisanie lub usunięcie. Zabezpieczenie tego kodu zapobiegnie zakłóceniom w wydajności i bezpieczeństwie Twojej witryny.

W tym artykule przeprowadzimy Cię przez kroki, aby zatrzymać WordPress przed nadpisywaniem pliku .htaccess. Postępując zgodnie z tymi instrukcjami, możesz chronić swój niestandardowy kod i zapewnić płynne działanie swojej witryny bez zakłóceń.

Jak zapobiec nadpisywaniu pliku .htaccess przez WordPress

Dlaczego WordPress nadpisuje plik .htaccess?

Twój plik .htaccess to potężny plik konfiguracyjny, który przechowuje ważne ustawienia dotyczące Twojej strony WordPress. Zawiera reguły, które mówią serwerowi hostingowemu, jak ma obsługiwać Twoją witrynę.

WordPress używa pliku .htaccess do przechowywania ustawień swoich permalinków. Za każdym razem, gdy zmienisz lub odtworzysz swoje permalinki, WordPress automatycznie nadpisze stare ustawienia w .htaccess nowymi.

Niektóre wtyczki WordPress zapisują również swoje ustawienia w pliku .htaccess. Na przykład wtyczka W3 Total Cache modyfikuje plik .htaccess w celu konfiguracji narzędzi buforowania i optymalizacji, które są częścią wtyczki.

Na koniec możesz wprowadzić własne niestandardowe zmiany w pliku .htaccess, aby kontrolować działanie Twojej witryny. Na przykład możesz dodać niestandardowe reguły do pliku, które chronią Twój obszar administracyjny, zapewniają bezpieczeństwo Twojej witryny przed hakerami, konfigurują przekierowania, blokują podejrzane adresy IP i wiele więcej.

Niektórzy użytkownicy obawiają się, że jeśli dodadzą własne niestandardowe reguły do .htaccess, zostaną one usunięte, gdy WordPress nadpisze plik nowymi ustawieniami. Inni użytkownicy wolą ręcznie konfigurować .htaccess i w ogóle nie pozwalać WordPressowi na zapisywanie do niego.

Mając to na uwadze, przyjrzyjmy się, jak zatrzymać WordPress przed nadpisywaniem pliku .htaccess. Po prostu użyj poniższych szybkich linków, aby przejść do interesującej Cię sekcji:

  1. Jak zatrzymać WordPress przed nadpisywaniem Twoich reguł .htaccess
  2. Jak zatrzymać WordPress przed modyfikacją .htaccess
  3. Przewodniki eksperckie dotyczące .htaccess w WordPress

Jak zatrzymać WordPress przed nadpisywaniem Twoich reguł .htaccess

Dobra wiadomość jest taka, że jeśli rozumiesz, jak działa plik .htaccess, możesz mieć pewność, że Twoje niestandardowe reguły nie zostaną nadpisane.

Dzieje się tak dlatego, że obszary pliku, które zostaną zmienione przez WordPress lub Twoje wtyczki, są wyraźnie oznaczone. Po prostu upewnij się, że nie dodajesz kodu do tych obszarów.

Nie modyfikuj kodu wewnątrz znaczników WordPress

Jak wspomnieliśmy wcześniej, WordPress używa pliku .htaccess do przechowywania ustawień dla przyjaznej dla SEO struktury adresów URL. Kod zapisany w pliku zostanie automatycznie nadpisany i zaktualizowany za każdym razem, gdy zmienisz ustawienia permalinków.

Jak widać na poniższym zrzucie ekranu, WordPress zapisuje te informacje między dwoma znacznikami: # BEGIN WordPress i # END WordPress.

Znaczniki WordPress w .htaccess

Zwróć uwagę na ostrzeżenie wewnątrz tych znaczników:

Dyrektywy (linie) między „BEGIN WordPress” a „END WordPress” są generowane dynamicznie i powinny być modyfikowane tylko za pomocą filtrów WordPress. Wszelkie zmiany w dyrektywach między tymi znacznikami zostaną nadpisane.

Oznacza to, że WordPress nie nadpisze ani nie zmodyfikuje żadnego kodu, który dodasz poza tymi znacznikami. Użytkownicy zazwyczaj dodają swój niestandardowy kod na górze pliku, przed znacznikiem # BEGIN WordPress.

Wskazówka: .htaccess to ukryty plik znajdujący się w głównym folderze Twojej witryny WordPress. Jeśli masz trudności z jego znalezieniem, zapoznaj się z naszym przewodnikiem na temat tego, dlaczego nie możesz znaleźć pliku .htaccess na swojej witrynie WordPress.

Nie modyfikuj kodu wewnątrz znaczników wtyczek

Kiedy wtyczka zapisuje swoje ustawienia do .htaccess, umieszcza je również między znacznikami, które wyglądają jak # BEGIN Plugin i # END Plugin.

Na przykład, jeśli zainstalujesz i skonfigurujesz wtyczkę W3 Total Cache, aby poprawić szybkość i wydajność swojej witryny, doda ona reguły do .htaccess między znacznikami # BEGIN W3TC Browser Cache i # END W3TC Browser Cache.

Przykład znaczników wtyczek w .htaccess

Te reguły zostaną nadpisane za każdym razem, gdy zmienisz ustawienia wtyczki, dlatego musisz uważać, aby nie dodawać własnych niestandardowych reguł .htaccess między tymi znacznikami.

Tworzenie znaczników dla własnego kodu

W rzadkich przypadkach źle napisany wtyczka może modyfikować kod poza swoimi znacznikami # BEGIN i # END. Zazwyczaj jednak nie będzie modyfikować kodu znajdującego się między znacznikami używanymi przez WordPress lub inne wtyczki.

Jeśli martwisz się, że źle działająca wtyczka nadpisuje Twój kod, możesz dodać własne znaczniki do pliku .htaccess.

Na przykład możesz wpisać znaczniki # BEGIN MyCustomCode i # END MyCustomCode na początku pliku .htaccess, a następnie dodać własne niestandardowe reguły między tymi znacznikami.

Możesz utworzyć własne znaczniki w .htaccess dla własnych reguł

Jeśli potrzebujesz również dodać kod na końcu pliku .htaccess, możesz tam dodać inny zestaw znaczników. Upewnij się tylko, że nadasz im inne nazwy. Na przykład, możesz użyć „MyCustomCodeTop” i „MyCustomCodeBottom”.

Jak zatrzymać WordPress przed modyfikacją .htaccess

Teraz, gdy rozumiesz, jak działa .htaccess, możesz mieć pewność, że Twój niestandardowy kod nie zostanie nadpisany przez WordPress ani przez Twoje wtyczki.

Jednak niektórzy deweloperzy i zaawansowani użytkownicy chcą zatrzymać WordPress przed wprowadzaniem jakichkolwiek zmian w .htaccess.

Na przykład możesz chcieć utworzyć permalinki, wpisując ustawienia ręcznie w pliku .htaccess. W takim przypadku będziesz chciał uniknąć konfliktów, uniemożliwiając WordPressowi zapisywanie własnych ustawień permalinków w tym pliku.

Nie zalecamy tego, chyba że wiesz, co robisz, ponieważ może to prowadzić do nieoczekiwanych konsekwencji. Można to jednak zrobić, zmieniając uprawnienia pliku lub używając kodu.

Zapobieganie zmianom pliku .htaccess przez WordPress za pomocą uprawnień do plików

Jednym ze sposobów na zatrzymanie modyfikacji pliku .htaccess przez WordPress jest ustawienie pliku jako tylko do odczytu. Aby to zrobić, musisz zmienić uprawnienia do pliku za pomocą klienta FTP lub menedżera plików dostarczonego przez Twojego dostawcę hostingu WordPress.

Plik .htaccess znajdziesz w katalogu głównym instalacji WordPressa. Następnie kliknij prawym przyciskiem myszy na plik i wybierz „Uprawnienia pliku”.

Wybieranie uprawnień do plików z menu w kliencie FTP

Spowoduje to wyświetlenie okna podręcznego, w którym możesz zmienić atrybuty pliku.

Domyślne ustawienie to 644, ale możesz je zmienić na 444, wpisując bezpośrednio w pole „Wartość liczbowa” lub upewniając się, że zaznaczone są tylko pola „Odczyt”.

Zmiana uprawnień pliku .htaccess na 444 lub tylko do odczytu

Po kliknięciu przycisku „OK” plik będzie tylko do odczytu i nie będzie można go modyfikować.

Oczywiście oznacza to również, że nie będziesz mógł zapisywać do pliku. Kiedy będziesz chciał dokonać zmian, będziesz musiał tymczasowo przywrócić uprawnienia pliku do 644.

Zatrzymanie modyfikacji pliku .htaccess przez WordPress za pomocą kodu

Innym rozwiązaniem jest użycie fragmentu kodu, który informuje WordPress, aby nie zapisywał do pliku .htaccess. Jest to przydatne, jeśli chcesz uniemożliwić WordPressowi modyfikowanie pliku .htaccess bez blokowania wtyczek.

Uwaga: Edytowanie podstawowych plików WordPress może być niebezpieczne. Nawet drobny błąd może spowodować poważne problemy na Twojej stronie. Dlatego tę metodę polecamy tylko zaawansowanym użytkownikom.

Po prostu dodaj poniższy fragment kodu na końcu pliku wp-config.php. Jeśli potrzebujesz pomocy, zapoznaj się z naszym przewodnikiem na temat jak edytować plik wp-config.php w WordPress:

add_filter('got_rewrite', '__return_false');

Po wykonaniu tej czynności WordPress nie będzie już zapisywał do pliku .htaccess.

Komunikat o błędzie wyświetlany, gdy WordPress nie może zmienić pliku .htaccess

Jeśli spróbujesz zmienić ustawienia permalinków, gdy plik .htaccess jest ustawiony jako tylko do odczytu, zostanie wyświetlony komunikat o błędzie.

Na górze strony Ustawienia » Permalink zobaczysz komunikat „Powinieneś teraz zaktualizować swój plik .htaccess”.

Komunikat o błędzie ustawień permalinków, gdy plik .htaccess jest niedostępny

Informuje Cię to, że WordPress nie był w stanie zmodyfikować pliku .htaccess.

Zazwyczaj tak właśnie miało być. Jednak jeśli chcesz dodać ustawienia permalinków WordPress do pliku .htaccess, będziesz musiał zrobić to ręcznie.

Na dole strony Ustawienia » Permalinks zobaczysz kolejny komunikat o błędzie informujący, że plik .htaccess nie jest zapisywalny. Poniżej zobaczysz reguły, które należy dodać do .htaccess.

Lista reguł, które będziesz musiał ręcznie dodać do .htaccess, jeśli zajdzie taka potrzeba

Jeśli chcesz dodać te ustawienia, musisz tymczasowo zmienić uprawnienia pliku .htaccess z powrotem na 644, aby można go było edytować. Następnie powinieneś wkleić reguły między znacznikami BEGIN i END WordPressa w pliku, zastępując istniejący kod.

Po zakończeniu po prostu ustaw wartość z powrotem na 444 i zapisz plik. Ponownie będzie on niepisalny.

Przewodniki eksperckie dotyczące .htaccess w WordPress

Mamy nadzieję, że ten samouczek pomógł Ci dowiedzieć się, jak zapobiec nadpisywaniu pliku .htaccess przez WordPress. Możesz również zapoznać się z innymi poradnikami dotyczącymi pliku .htaccess:

Jeśli podobał Ci się ten artykuł, zasubskrybuj nasz kanał YouTube po samouczki wideo WordPress. Możesz nas również znaleźć na Twitterze i Facebooku.

Ujawnienie: Nasze treści są wspierane przez czytelników. Oznacza to, że jeśli klikniesz w niektóre z naszych linków, możemy otrzymać prowizję. Zobacz jak finansowany jest WPBeginner, dlaczego to ważne i jak możesz nas wesprzeć. Oto nasz proces redakcyjny.

Ostateczny zestaw narzędzi WordPress

Uzyskaj BEZPŁATNY dostęp do naszego zestawu narzędzi – kolekcji produktów i zasobów związanych z WordPress, które powinien mieć każdy profesjonalista!

Interakcje czytelników

2 CommentsLeave a Reply

  1. To był jeden z pierwszych artykułów na WPBeginner, kiedy celowo szukałem powodu, dla którego plik .htaccess klienta był nadpisywany. Teraz wiemy, rozumiemy i piszemy .htaccess poprawnie. Wielkie dzięki za zrozumienie powodu.

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszą polityką komentowania, a Twój adres e-mail NIE zostanie opublikowany. Prosimy NIE używać słów kluczowych w polu nazwy. Prowadźmy osobistą i znaczącą rozmowę.