Jak rozwiązać i rozwiązać typowe problemy z XAMPP i WordPress

Więc masz zainstalowany XAMPP i świeżą lokalną instalację WordPress. Następnie czas zainstalować ten idealny motyw. Ale czekaj! O co chodzi z tym błędem Krytycznym i maksymalnym czasem realizacji? Tylko wtedy, gdy myślałeś, że przeszedłeś wszystkie ciężkie rzeczy…

Napotkanie problemów podczas tworzenia z XAMPP jest normalne, zwłaszcza jeśli pracujesz z nim po raz pierwszy. Podczas korzystania z XAMPP, po instalacji, zainstalowaniu wtyczki, zaimportowaniu dużej bazy danych i utworzeniu kopii zapasowej lokalnej strony internetowej są szanse na coś pójść nie tak. Tak jak każdy inny serwer, lokalny serwer XAMPP będzie musiał być dostosowany do konkretnej konfiguracji komputera, aby działał bez problemów.

Błędy PHP i konflikty portów są najczęstszymi przykładami błędów, na które natrafiają Programiści XAMPP. Niektóre z tych problemów są prawie gwarantowane, aby pojawić się podczas pracy z lokalną instalacją WordPress, aw tym samouczku pokażę Ci, jak przezwyciężyć cztery najczęstsze problemy XAMPP Programiści WordPress mogą napotkać.

Rozwiązywanie problemów problemy z XAMPP i WordPress

Problem 1: przekroczono maksymalny czas wykonania PHP

Jest to prawdopodobnie najczęstszy problem, z którym spotykają się użytkownicy XAMPP po raz pierwszy. Spróbuj zainstalować dużą wtyczkę lub zaktualizować rdzeń WordPress i masz prawie gwarancję, aby zobaczyć fatalny komunikat o błędzie informujący, że Maksymalny czas wykonania 30 sekund został przekroczony.

error message stating that the maximum execution time has been exceeded

Dobra wiadomość jest taka, że jest to naprawdę prosty problem do naprawienia.

Chodzi o to, że ustawienia sterujące wersją PHP uruchomioną na twojej instalacji XAMPP ograniczają czas wykonywania skryptu do 30 sekund. Jednak instalacja dużych wtyczek, aktualizacja rdzenia WordPress lub wykonywanie wielu innych typowych operacji WordPress trwa dłużej niż 30 sekund.

Aby rozwiązać ten problem, musisz dostosować pojedyncze ustawienie PHP w PHP instalacji XAMPP.plik ini.

Są dwa sposoby, aby dostać się do tego pliku.

  1. Otwórz Panel sterowania XAMPP, kliknij Config w wierszu Apache i wybierz PHP (php.ini). Spowoduje to otwarcie pliku w edytorze tekstu, ale prawdopodobnie nie jest to preferowany edytor tekstu.
  2. Przejdź do głównego folderu XAMPP, otwórz katalog php i poszukaj pliku o nazwie php.ini. Następnie otwórz ten plik za pomocą preferowanego edytora tekstu.

Na moim laptopie z systemem Windows z zainstalowanym XAMPP bezpośrednio w katalogu C: plik znajduje się pod tym adresem: C: xampphpphp.ini.

Otwórz php.ini w edytorze tekstu i znajdź linię max_execution_time. Jeśli korzystasz z najnowszej wersji XAMPP, powinna ona pojawić się w linii 368 pliku. Aby wydłużyć czas wykonania, wystarczy wprowadzić większą liczbę. Domyślną wartością jest 30 sekund, ale wiele współdzielonych środowisk hostingowych ustawia ten limit na 120 sekund. Zwiększenie tej wartości do 120 powinno powstrzymać cię od ponownego napotkania tego konkretnego problemu podczas pracy z witrynami WordPress.

maximum execution time increased to 120 seconds
120 seconds jest powszechnie używany przez współdzielonych dostawców hostingu i powinien obejmować prawie każdy WordProperacja ess.

Za każdym razem, gdy dokonasz zmiany w php.ini musisz zapisać plik, zamknąć go, a następnie zatrzymać i ponownie uruchomić Apache w Panelu sterowania XAMPP. Apache odczytuje tylko wartości w php.ini, gdy się uruchomi. Czyli wszelkie zmiany wprowadzone w php.ini, gdy Apache jest już uruchomiony, nie będzie działać, dopóki Apache nie uruchomi się ponownie i nie odczyta nowych wartości.

Uruchom ponownie Apache, a następnie ponów operację, która spowodowała pojawienie się błędu. Powinieneś teraz zobaczyć, jak wszystko przebiega zgodnie z oczekiwaniami.

Problem 2: Przekroczono Maksymalny Rozmiar Pliku

Ten błąd może objawiać się z wielu różnych powodów. Zdecydowanie najczęstszym sposobem napotkania tego błędu jest próba użycia narzędzia Media uploader w WordPress do przesłania pliku obrazu większego niż 2 MB. Napotkałem również ten błąd podczas próby zaimportowania bazy danych za pomocą phpMyAdmin. Niezależnie od tego, jak uda Ci się wywołać ten krytyczny błąd PHP, poprawka jest taka sama.

A WordPress error message letting us know that the maximum upload file size has been exceeded

Jest to kolejny problem, który można rozwiązać, wprowadzając pewne zmiany w php.ini.

Wróć do php.ini. Tym razem poszukaj linii, która definiuje upload_max_filesize. Domyślnie wartość ta jest ustawiona na 2 megabajty. Zwiększ wartość do liczby, która pomieści Rozmiar pliku lub bazy danych, którą próbujesz przesłać. Należy pamiętać, że dopuszczalne wartości to dowolna liczba, która jest potęgą dwójki. Tak więc dopuszczalne wartości to potęgi dwóch: 2m, 4M, 8M, 16M, 32M, 64M, 128M i tak dalej. Użyj innej wartości, na przykład 20m, A Apache zaokrągli efektywną wartość do najbliższej akceptowalnej wartości, która byłaby 16M, gdyby wprowadzić 20m.

upload_max_filesize increased to 128M

Przed zamknięciem php.ini, poszukaj linii, która definiuje post_max_size. Ta wartość działa ręka w rękę z upload_max_filesize. Zwiększenie jednego bez zwiększania drugiego spowoduje, że mniejszy z dwóch zostanie zastosowany jako maksymalny rozmiar przesyłanego pliku. Znajdź linię I Użyj tej samej wartości, której użyłeś dla upload_max_filesize.

post_max_size increased to 128M

Jeśli poświęcisz trochę czasu, aby uważnie przyjrzeć się notatkom w php.w pliku ini zobaczysz, że dla wielu ustawień podany jest adres URL, w którym możesz dowiedzieć się więcej o ustawieniach, które dostosowujesz. Zawsze warto poświęcić chwilę na odwiedzenie odwołującego się adresu URL. Na przykład, dokumentacja dostarczona dla ustawienia post_max_size pozwala nam wiedzieć, że wartość memory_limit powinna być co najmniej tak duża jak post_max_size. Szybkie spojrzenie na memory_limit ujawnia, że domyślną wartością jest 128 megabajtów. O ile nie ustawisz wyższego limitu dla post_max_size i upload_max_filesize niż 128M, nie będziesz musiał dostosowywać tej wartości.

Problem 3: Naprawianie Konfliktów Portów Apache

Innym Komunikatem o błędzie, który jest dość powszechny podczas pracy z XAMPP, jest powiadomienie w Panelu sterowania XAMPP, którego porty Apache musi użyć, porty 443 i 80, są już używane przez inną aplikację.

porty ng 443 i 80 “width= “735”height= “160” / >

W przypadku komunikatu o błędzie na powyższym obrazku jest to dość Łatwa poprawka. Aplikacja to Skype. Jeśli widzisz ten sam komunikat, zamknij Skype całkowicie i uruchom ponownie XAMPP, aby rozwiązać problem. Skype jest częstym lotnikiem na scenie blokowania portów i dość łatwy do zidentyfikowania i naprawienia. Niestety, sprawy nie zawsze są takie proste. Inne rzeczy, które możesz wypróbować, jeśli zamknięcie Skype nie rozwiązuje problemu, to:

  • Stop World Wide Web Publishing Service, aplikacja narzędziowa preinstalowana na wielu komputerach z systemem Windows. Aby go zatrzymać, Otwórz Narzędzia administracyjne > Usługi w Panelu sterowania systemu Windows, wyszukaj aplikację, zaznacz ją i kliknij Zatrzymaj.
  • Użyj Zapory systemu Windows, aby wymusić odblokowanie portów. Zrób to, otwierając panel sterowania systemu Windows i przechodząc do Zapory systemu Windows > Ustawienia zaawansowane. Następnie dodaj nową regułę przychodzenia, zmuszając porty 80 i 443 do pozostania odblokowane.

Te dwie poprawki zostały omówione bardziej szczegółowo w naszym poprzednim samouczku na temat konfigurowania XAMPP, więc nie będziemy ponownie omawiać wszystkich szczegółów tutaj. Zamiast tego, sprawdź ten samouczek, aby wypróbować te poprawki usuwania portów.

Czasami odblokowanie Portu 80 może być szczególnie trudne. Lub może być tak, że potrzebujesz aplikacji używającej Portu 80, aby nadal jej używać. W tej puszce możesz skonfigurować XAMPP do pracy nad portem 8080 zamiast 80.

Aby wprowadzić tę zmianę, otwórz Panel sterowania XAMPP, ale nie uruchamiaj MySQL lub Apache. Zamiast tego kliknij Konfiguruj w wierszu Apache i wybierz Apache (httpd.conf) opcja.

XAMPP control panel, selecting Config and then Apache httpd.conf
Wybierz Config i Apache httpd.conf

Alternatywnie możesz przejść do C: xamppapacheconfhttpd.conf aby otworzyć plik.

Po otwarciu pliku znajdź linię z napisem Listen 80 i zmień ją na Listen 8080. Następnie znajdź linię z napisem ServerName localhost: 80 i zmień tę wartość na ServerName localhost:8080. Zapisz zmiany i zamknij plik.

Po wprowadzeniu tych zmian uruchom ponownie XAMPP i uruchom Apache i MySQL. Port 80 nie powinien być już używany. Zamiast tego powinieneś zobaczyć Apache ‘ a działającego na portach 443 i 8080.

Istnieją dwie dodatkowe rzeczy, które musisz zrobić, aby ta zmiana zadziałała:

  1. Użycie http://localhost:8080/ aby uzyskać dostęp do wszystkich stron internetowych opartych na XAMPP, a nie http://locahost/.
  2. Jeśli masz już zainstalowane lokalne witryny WordPress przed zmianą portu, musisz zaktualizować definicje WP_HOME i WP_SITEURL w wp-config.php ręcznie, aby odzwierciedlić nowy prefiks domeny.

Define your site and home url as localhost:8080 in wp-config
Oczywiście, można użyć katalogu, w którym zostały zainstalowane WordPress lokalnie, a nie “yourWordPressSite”.

Problem 4: nie można dodać lub zaimportować dodatkowych elementów Menu

Jeśli menu witryny zawiera więcej niż 90 pozycji, masz dwa problemy.

  1. Możesz poważnie przemyśleć nawigację w swojej witrynie. Nie ma zbyt wielu stron internetowych, które mają dobry powód do posiadania tak wielu pozycji menu.
  2. Przekonasz się, że podczas próby dodania dodatkowych elementów menu nie będziesz w stanie tego zrobić. Ponadto, jeśli yospróbuj zaimportować witrynę WordPress z istniejącymi menu, które zawierają więcej niż elementy 90, niektóre elementy zostaną usunięte z menu.

Jest to jeszcze jeden przykład problemu spowodowanego ustawieniami PHP zawartymi w php.plik ini. Otwórzmy go z powrotem.

Po otwarciu pliku poszukaj linii, która ustawia limit na max_input_vars.

Screenshot of php.ini showing the max_input_vars definition

Domyślną wartością tej pozycji jest 1000. Aby określić wartość, której potrzebujesz, aby pomieścić wszystkie planowane elementy mega-monster-menu, Weź liczbę potrzebnych elementów menu, pomnóż ją przez 11 i dodaj 9 do produktu. Tak więc, jeśli chcesz pomieścić 120 pozycji menu, musisz zwiększyć limit do co najmniej 1329 (120 * 11 + 9).

Jeśli jesteś ciekawy, bardzo dobre wyjaśnienie, dlaczego ta formuła działa, jest dostępne na StackOverflow.

Po zaktualizowaniu tej wartości, aby odzwierciedlić liczbę planowanych elementów menu, zapisz plik, zamknij go i uruchom ponownie Apache. Dopóki Apache nie uruchomi się ponownie, zmiany nie wejdą w życie.

Wrapping Up

XAMPP zapewnia łatwy sposób uruchamiania lokalnego środowiska serwera na komputerze z systemem Windows, pozwalając na testowanie i rozwijanie lokalnie, zamiast instalowania WordPressa na aktywnej stronie. Pozwoli to również zaoszczędzić sporo czasu, ponieważ nie będziesz musiał instalować i odinstalowywać WordPressa za każdym razem, gdy testujesz motywy i wtyczki.

Ale praca z XAMPP może być czasami bólem głowy (wystarczy wyszukać w Google, ile razy ludzie szukali rozwiązań problemów!). Jednak dzięki temu możesz dowiedzieć się więcej o WordPress, Apache, phpMyAdmin i PHP, niż możesz się kiedykolwiek dowiedzieć, jeśli ograniczysz cały swój rozwój do serwera www na żywo.

Jakie inne wyzwania napotkałeś podczas pracy z XAMPP i WordPress? Jak je rozwiązałeś?

Tagi: