Luku 18 · 18.1
Sivustoni on valkoinen tai antaa virheen 500
Avaat sivustosi ja näet valkoisen ruudun, viestin 500 Internal Server Error, HTTP ERROR 500 tai WordPressissä Er is een kritieke fout opgetreden op deze website. Se tarkoittaa lähes aina, että sivustosi koodi jumittuu. Palvelin itse toimii yleensä normaalisti. Alla olevilla vaiheilla löydät useimmiten syyn itse.
Ensin: mikä on juuri muuttunut?
Virhe 500 ei synny juuri koskaan tyhjästä. Mieti viimeisiä tunteja tai päiviä:
- Päivititkö pluginin, teeman tai WordPressin itse, vai teikö WordPress sen automaattisesti?
- Vaihditko PHP-version?
- Muutitko jotain tiedostossa .htaccess, tai loitko uudelleenohjauksen tai suojatun kansion?
- Latasitko tiedostoja tai muutitko tiedostojen oikeuksia?
Jos tiedät mikä muutos oli kyseessä, peruuta ensin juuri se. Se on yleensä nopein ratkaisu.
Vaihe 1: katso virhelokia
Virhelokista näet tarkalleen, mikä tiedosto ja mikä rivi aiheuttaa virheen. Löydät sen DirectAdminissa kohdasta System Info & Files ja sitten Site summary & logs. Valitse verkkotunnuksesi ja avaa virheloki. Katso alimpia rivejä, ne ovat uusimpia. Lue tarkemmin kohdasta Site summary & logs: virhelogi ja käyttölogi.
Jos näet esimerkiksi PHP Fatal error polulla wp-content/plugins/pluginin-nimi, tiedät heti mikä plugin aiheuttaa ongelman.
Vaihe 2: yleisimmät syyt
Alla syyt yleisimmästä harvinaisimpaan.
1. Plugin tai teema päivityksen jälkeen
Tämä on selvästi yleisin syy WordPressissä. Jos et pääse enää WordPressin hallintaan, sammuta pluginit DirectAdminin kautta:
- Avaa File Manager (katso Bestandsbeheer avaaminen: paketin kansiot).
- Siirry kansioon domains/verkkotunnuksesi.fi/public_html/wp-content.
- Nimeä kansio plugins uudelleen esimerkiksi nimelle plugins-pois. WordPress sammuttaa silloin kaikki pluginit.
- Toimiiko sivusto nyt? Nimeä kansio takaisin nimelle plugins ja kytke WordPressissä pluginit takaisin päälle yksi kerrallaan, kunnes virhe palaa. Silloin tiedät kumpi se on.
Jos tiedät jo mikä plugin on kyseessä (virhelokin perusteella), nimeä uudelleen vain sen pluginin kansio. Kriittisen virheen yhteydessä WordPress lähettää usein myös sähköpostin ylläpitäjän osoitteeseen, jossa on linkki palautustilaan. Tarkista siis myös sähköpostisi.
2. PHP-versio ei sovi sivustollesi
Vanha sivusto ei usein toimi uudella PHP-versiolla, eikä uusi plugin joskus toimi vanhalla. Jos vaihdoit PHP-version juuri äskettäin, vaihda se takaisin kohdassa Select PHP version (katso PHP-version valinta (Select PHP version)). Kohdasta Fouten na een PHP-upgrade en het foutlog vinden luet, miten teet sivustosta myöhemmin yhteensopivan uudemman version kanssa.
Vinkki: Onko sivustoasi päivitetty vuosiin ja se ei enää toimi nykyaikaisella PHP-versiolla? Voimme päivittää sen puolestasi. Katso www.weboke.fi/website-php-upgrade.
3. Virhe tiedostossa .htaccess
Yksikin väärä rivi tiedostossa .htaccess aiheuttaa heti virheen 500 koko sivustolle. Tunnettu esimerkki on rivi, jonka suojausplugin on jättänyt jälkeensä, kuten php_value auto_prepend_file polulla tiedostoon, jota ei enää ole olemassa (esimerkiksi Wordfencen tai All In One WP Securityn). Testaa näin:
- Kytke File Managerissa piilotetut tiedostot näkyviin (katso Piilotiedostojen, kuten .htaccess, näyttäminen ja muokkaaminen).
- Nimeä .htaccess-tiedosto kansiossa public_html uudelleen nimelle .htaccess-vanha.
- Jos sivusto toimii nyt (mahdollisesti ilman siistejä osoitteita), virhe on kyseisessä tiedostossa. Poista virheellinen rivi ja nimeä tiedosto takaisin.
PHP-asetukset, kuten suurin sallittu latauskoko, kannattaa asettaa helpoiten kohdassa Select PHP version (katso PHP-asetukset: upload_max_filesize, memory_limit ja max_execution_time). Myös rivi php_value-määrityksellä .htaccess-tiedostossa toimii (katso PHP-asetukset kansiokohtaisesti ja .htaccess-tiedoston kautta).
4. Liian vähän muistia PHP:lle
Jos virhelokissa lukee Allowed memory size of ... bytes exhausted, skripti tarvitsee enemmän muistia kuin PHP:lle on sallittu. Nosta arvoa memory_limit kohdassa Select PHP version (katso PHP-asetukset: upload_max_filesize, memory_limit ja max_execution_time).
5. Väärät tiedosto-oikeudet
Jos kansioilla tai tiedostoilla on liian laajat oikeudet (kuten 777), palvelin kieltäytyy suorittamasta niitä. Kansioiden tulisi olla oikeuksilla 755 ja tiedostojen oikeuksilla 644. Lue muuttamisesta kohdasta Tiedostojen ja kansioiden oikeudet (chmod).
6. Pakettisi tallennustila on täynnä
Jos pakettisi on täynnä, sivustosi ei pysty enää kirjoittamaan väliaikaistiedostoja tai istuntoja. Katso DirectAdminin kojelaudalta kohta Disk Space. Lue mitä tehdä kohdasta Tallennustila täynnä: mihin tila kuluu?.
7. Harvinaisempia: tietokanta, rajat tai hakkerointi
- Näetkö viestin Error establishing a database connection? Lue 'Error establishing a database connection'.
- Näetkö virheen 503 tai Resource Limit Is Reached? Silloin pakettisi laskentateho on käytetty loppuun. Lue 503 of 'Resource Limit Is Reached': mitä nyt?.
- Löytyykö tiedostoja, joita et tunnista, tai ohjaako sivustosi kävijöitä outoihin verkko-osoitteisiin? Lue Sivustoni on hakkeroitu: vaiheittainen ohje.
Valkoinen ruutu ilman viestiä
Valkoisen ruudun tapauksessa PHP piilottaa virheilmoituksen tarkoituksella kävijöiltä. Vaiheen 1 virheloki on silloin paras tietolähteesi. WordPressissä voit myös väliaikaisesti lisätä rivin define('WP_DEBUG', true); tiedostoon wp-config.php. Muista vaihtaa se takaisin arvoon false, muuten kävijät näkevät sivustosi teknisiä yksityiskohtia.
Muut virhekoodit lyhyesti
| Viesti | Mitä se tarkoittaa? | Mistä luet lisää? |
|---|---|---|
| 403 Forbidden | Palvelin kieltäytyy näyttämästä sivua, esimerkiksi sivustosi palomuurin, oikeuksien tai puuttuvan index-tiedoston vuoksi. | Virhe 403 tai 406 tallennuksen tai latauksen yhteydessä |
| 404 Not Found | Sivua tai tiedostoa ei ole kyseisessä paikassa. Onko sivustosi oikean verkkotunnuksen kansiossa public_html? Huomioi isot ja pienet kirjaimet tiedostonimissä. | Bestandsbeheer avaaminen: paketin kansiot |
| 413 Request Entity Too Large | Lataamasi tiedosto on suurempi kuin on sallittu. | Lataus liian suuri (virhe 413) tai aikakatkaisu |
| 500 Internal Server Error | Sivustosi koodi jumittuu. | Tämä artikkeli |
| 503 tai 508, Resource Limit Is Reached | Pakettisi käyttää väliaikaisesti enemmän laskentatehoa kuin on sallittu. | 503 of 'Resource Limit Is Reached': mitä nyt? |
| WebOké-sivu oman sivustosi sijaan | Verkkotunnus ei ole vielä (oikein) hostingpaketissasi, tai DNS osoittaa vielä muualle. | Verkkotunnukseni ei toimi vielä siirron tai muutoksen jälkeen |
Takaisin toimivaan versioon
Etkö löydä ratkaisua ja sivusto toimi vielä eilen? Palauta silloin varmuuskopio. Mijn WebOkéssa tämä onnistuu kohdasta WebOké Backups: valitse hetki ennen virhettä ja palauta vain sivustosi kansio ja mahdollisesti tietokanta (katso Voiko tämän tehdä myös Mijn WebOké-portaalissa? WebOké Backups). Jos käytät Installatronia, voit palauttaa myös Installatronin varmuuskopion (katso Varmuuskopioiden tekeminen ja palauttaminen Installatronissa).
Vinkki: Kohdasta Verkkotunnuksen kunto osoitteessa www.weboke.fi/domein-gezondheid näet kerralla, ovatko verkkotunnuksesi, A-tietue, sivusto ja SSL-varmenne kunnossa. Kohdassa Sivusto lukee silloin esimerkiksi Vastaa palvelinvirheellä (HTTP 500).
