Jak naprawić błąd „Nie można zmodyfikować informacji nagłówka — nagłówki już wysłane przez”?
Opublikowany: 2021-11-26Większość komunikatów o błędach WordPress daje wyobrażenie o tym, co powoduje problemy w Twojej witrynie. Błąd „Ostrzeżenie: nie można modyfikować informacji nagłówka – nagłówki już wysłane przez” nie jest wyjątkiem. Jeśli plik PHP nie może zostać uruchomiony z powodu problemu w jego kodzie, natkniesz się na ten komunikat.
Istnieje kilka potencjalnych przyczyn błędu „Nie można zmodyfikować informacji nagłówka”. Na szczęście sama wiadomość powie Ci, który plik powoduje problem. Wskazuje nawet na wiersz kodu zawierający problem.
W tym artykule omówimy ten błąd i jego przyczyny. Następnie omówimy dwa sposoby rozwiązania problemu. Chodźmy do pracy!
Co powoduje błąd „Nie można zmodyfikować informacji nagłówka — nagłówki już wysłane przez”?
Jak wspomnieliśmy wcześniej, napotkasz ten błąd, gdy jeden z plików .php Twojej witryny nie może zostać wykonany. WordPress opiera się na plikach .php, takich jak wp-config.php i functions.php, ze względu na swoją podstawową funkcjonalność.
Jeśli wystąpi problem w jednym z plików .php , które Twoja witryna musi załadować, zobaczysz komunikat o błędzie, który wygląda tak:
Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/wp-config.php:#) in /home/public_html/wp-includes/file-example.php on line 33
Na szczęście błąd „Nie można zmodyfikować informacji nagłówka” zawiera wiele informacji, które sprawiają, że rozwiązywanie problemów jest stosunkowo proste. Wiadomość wskaże Ci dwa pliki – pierwszy zawiera problem, co uniemożliwia wykonanie drugiego.
Na końcu komunikatu o błędzie zobaczysz sekcję z napisem „wiersz XX”. Pokazuje lokalizację konkretnego kodu, który powoduje problem.
Zwykle problem w kodzie PHP jest dość łatwy do naprawienia. Oto niektóre typowe przyczyny, które mogą wywołać komunikat o błędzie:
- Spacje przed
<?php
segmentem kodu lub po zamykającym tagu?>
- Blok HTML przed funkcją nagłówka PHP
- instrukcje
print
lubecho
dodane przed funkcją nagłówka PHP - Problemy z kodem wtyczki
Naprawianie tego typu błędów wymaga przynajmniej przejściowo wygodnego modyfikowania kodu PHP. Nie musisz samodzielnie dodawać żadnego kodu.
Mimo to możesz potrzebować dodatkowej pomocy w zidentyfikowaniu problemu. Jest to szczególnie ważne, jeśli problem nie dotyczy białych znaków lub instrukcji przed funkcją nagłówka PHP.
Jak rozwiązać problem z błędem „Ostrzeżenie: nie można zmodyfikować informacji nagłówka — nagłówki już wysłane przez” (2 metody)
Istnieją dwa podejścia do rozwiązywania problemów z błędem „Nie można zmodyfikować informacji nagłówka — nagłówki już wysłane przez”. Pierwsza metoda nie wymaga wychodzenia z pulpitu WordPress.
Jednak druga strategia korzysta z FTP/SFTP, jeśli nie możesz uzyskać dostępu do pulpitu nawigacyjnego lub użyć WordPressa.
Zacznijmy od pierwszej metody rozwiązywania problemów.
1. Napraw błąd za pomocą edytora wtyczek/motywów lub wymień wtyczkę
Pierwszą rzeczą, którą musisz zrobić, gdy napotkasz błąd „Nie można zmodyfikować informacji nagłówka — nagłówki już wysłane przez”, jest otwarcie pliku, który powoduje problem. Następnie znajdź linię wskazaną przez komunikat.
Na przykład, jeśli zobaczysz błąd o następującej treści, oznacza to, że musisz zajrzeć do pliku functions.php motywu:
Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/wp-content/themes/twentytwentyone/functions.php:#) in /home/public_html/wp-includes/file-example.php on line 1
W tym scenariuszu możesz dotrzeć do źródła problemu za pomocą edytora motywów WordPress. Aby uzyskać do niego dostęp, przejdź do Wygląd > Edytor motywów .
Po wejściu użyj menu po prawej stronie, aby wybrać plik, do którego chcesz uzyskać dostęp.
Jeśli przyjrzysz się uważnie, zauważysz kilka spacji przed tagiem <?php
. Sam komunikat o błędzie wskazuje na wiersz numer jeden. Dlatego oznacza to, że białe znaki są źródłem problemu.
W tym przykładzie wszystko, co musisz zrobić, to usunąć białe spacje i kliknąć Aktualizuj plik . Teraz spróbuj ponownie załadować swoją witrynę, a błąd powinien zniknąć.
Możesz zastosować ten sam proces za pomocą edytora wtyczek WordPress ( Wtyczki > Edytor wtyczek ). Ta metoda ma zastosowanie, jeśli komunikat o błędzie wskazuje na wadliwy plik wtyczki.
Alternatywnie możesz napotkać błąd, który wskazuje jeden z plików w katalogu wtyczek WordPress. W tym scenariuszu możesz usunąć i ponownie zainstalować tę wtyczkę. W większości przypadków załatwi to sprawę za Ciebie.
Pamiętaj jednak, że możesz utracić konfigurację tej wtyczki, w zależności od używanego narzędzia. W związku z tym może być konieczne ponowne skonfigurowanie dodatku.
2. Edytuj plik problemu przez FTP/SFTP
W niektórych przypadkach źródło błędu „Nie można zmodyfikować informacji w nagłówku — nagłówki już wysłane przez” nie będzie znajdować się w pliku, do którego można uzyskać dostęp za pomocą motywu WordPress lub edytorów wtyczek. Alternatywnie możesz korzystać z witryny innej niż WordPress.
W takich sytuacjach najlepszym rozwiązaniem jest uzyskanie dostępu do pliku powodującego problem za pomocą protokołu FTP/SFTP. Aby to zrobić, musisz użyć klienta FTP lub SFTP, takiego jak platforma FileZilla.
Będziesz także potrzebować dostępu do danych logowania FTP/SFTP swojej witryny. W większości przypadków powinieneś je znaleźć w swoim panelu hostingowym.
Potrzebujesz błyskawicznego, niezawodnego i w pełni bezpiecznego hostingu dla swojej witryny e-commerce? Kinsta zapewnia to wszystko i całodobowe wsparcie światowej klasy od ekspertów WooCommerce. Sprawdź nasze plany
Jeśli korzystasz z Kinsta, możesz uzyskać dostęp do MyKinsta, wybierz swoją witrynę w obszarze Witryny i kliknij jej kartę Informacje .
Po uzyskaniu poświadczeń użyj klienta FTP lub SFTP, aby połączyć się ze swoją witryną. Musisz zlokalizować folder główny witryny. Zwykle jego nazwa powinna brzmieć root, public_html , public lub nazwą Twojej własnej witryny.
Oto krótkie spojrzenie na to, jak wygląda wnętrze folderu głównego WordPress.
Śmiało zlokalizuj plik, który wskazuje błąd „Nie można zmodyfikować informacji nagłówka — nagłówki już wysłane przez”. Na przykład, jeśli problem to public/wp-config.php
, kliknij plik prawym przyciskiem myszy i wybierz opcję Wyświetl/edytuj .
Ta opcja otworzy wybrany plik za pomocą domyślnego edytora tekstu. Po otwarciu dokumentu zlokalizuj problem, przechodząc do wiersza, do którego wskazywał komunikat o błędzie.
Jeśli nie możesz wykryć błędu, być może będziesz musiał skonsultować się z kimś, kto ma doświadczenie w pracy z plikami PHP. Załóżmy jednak, że masz do czynienia z problemem z białymi znakami lub instrukcją przed nagłówkiem PHP. W takim przypadku powinieneś być w stanie samodzielnie rozwiązać problem.
Po zakończeniu zapisz zmiany w pliku i zamknij klienta FTP/SFTP. Spróbuj ponownie uzyskać dostęp do swojej witryny, a błąd powinien zniknąć.
Streszczenie
Błąd „Ostrzeżenie: nie można modyfikować informacji nagłówka – nagłówki już wysłane przez” może być onieśmielający, ponieważ wyświetla długą wiadomość. Jednak ten szczegółowy komunikat o błędzie sprawia, że ten błąd jest stosunkowo łatwy do rozwiązania. W przeciwieństwie do innych problemów, ten jest wystarczająco uprzejmy, aby powiedzieć, który plik go powoduje i do której linii kodu należy się przyjrzeć.
W zależności od pliku, który powoduje błąd, istnieją dwa sposoby jego rozwiązania:
- Napraw błąd za pomocą edytora wtyczek/motywów lub wymień wtyczkę.
- Edytuj problematyczny plik za pomocą klienta FTP/SFTP.
Znalezienie źródła tego błędu jest proste. Jednak naprawienie tego może stanowić problem, jeśli nie znasz PHP.
Nadal masz problemy z naprawą tego błędu? Podziel się swoimi doświadczeniami z naszą społecznością w komentarzach poniżej!