Tarkista lokit selvittääksesi, miksi 500-virhe ilmenee. Error.log-tiedostossa saattaa olla merkintä, joka ilmaisee ongelman syyn. Harkitse yleisimpiä vaihtoehtoja.
Resurssien puute
Jos tämä on syy, ongelma ratkeaa hyvin yksinkertaisesti - ota yhteyttä palveluntarjoajaan ja pyydä resurssien lisäämistä.
Käyttämättömien komentosarjojen läsnäolo tai rajoitettu aika niiden suorittamiseen
Jos palvelin ei pysty käsittelemään komentosarjoja tietyn ajan, usein minuutin, tapahtuu 500 sisäinen palvelinvirhe.
Lisäksi verkkovastaavat voivat kohdata samanlaisen virheen, jos he suorittavat CGI-komentosarjan Apachesta, jos palvelimen asetuksissa määritetty aika ei riitä komentosarjan suorittamiseen.
Jos komentosarjat toimivat aiemmin ja ongelmia ilmeni esimerkiksi siirryttäessä toiseen isännöintiin, ongelma voi johtua muista syistä. Esimerkiksi se, että palvelin estää pyynnöt.
Virheet käyttöoikeuksien asettamisessa
Tiedostojen käyttöoikeuksien on oltava 444 tai 644. Kansioiden CHMOD ei saa ollaeroavat 755:stä, eli vain resurssin omistaja voi tarkastella niitä. Komentosarjan käyttöoikeudet on asetettava arvoon 600. Muussa tapauksessa palvelin estää pääsyn komentosarjaan turvallisuussyistä, vaikka se toimisikin.
Jos tämä on syy 500-virheeseen, käytä FTP-hallintaa muuttaaksesi käyttöoikeuksia. Filezilla tekee hienoa työtä näiden toimintojen kanssa.
.htaccess-tiedosto sisältää ohjeita, joita ei tueta
Tarkista, onko.htaccess-tiedosto sivuston juuressa tai muualla. Jos sellainen on, avaa se millä tahansa tekstieditorilla. Voit käyttää Notepadia.
Virhe 500 saattaa ilmestyä, jos käytät palvelinta, joka toimii suPHP:llä, ts. php.ini-tuki. Jos.htaccess-tiedostossa on ohjeita, jotka muuttavat PHP-ympäristön asetuksia, saattaa ilmetä ongelmia. Yleisimmät käskyt ovat php_admin_flag, php_flag ja php_value.
Maailmanlaajuiset muuttujat sisältyvät usein ohjeisiin - Register Globals.
Tämä ongelma ratkaistaan hyvin yksinkertaisesti - ei-toivotut parametrit voidaan yksinkertaisesti poistaa. Toinen vaihtoehto on kommentoida niitä lisäämällä -merkki rivin alkuun. Puntamerkin ja ohjeen nimen välissä on oltava välilyönti.
Jos sinun on ehdottomasti suoritettava kommentoidut parametrit, ne voidaan määrittää php.ini-tiedostossa. Tässä tapauksessa sinun ei tarvitse käyttää php_admin_flag-, php_flag- ja php_value-määritteitä - vain nimeä ne periaatteen mukaisesti: "pakollisen parametrin nimi=Päällä".
PHP vakava virhe
Tämä ongelma voi ilmetä, jos PHP toimii kuten CGI. Tässä tapauksessa sinun on tarkistettava huolellisesti ohjelmakoodi, diagnosoitava ja korjattava virheet. Huomaa, että CGI-komentosarjan rivinpäätteet eivät saa olla Windows-muodossa (r\n), vaan niiden on oltava UNIX-muodossa (n).
Jos mikään ehdotetuista ratkaisuista ei korjaa virhettä, ota yhteyttä isäntään. Selitä hänelle yksityiskohtaisesti milloin ja minkä toimenpiteiden jälkeen 500-virhe ilmestyi. Pyydä häntä kertomaan ongelman syyt ja auttamaan sen korjaamisessa. Jos isännöitsijä ei pysty selvittämään, miksi http 500 Internal Server Error tapahtui, ota yhteyttä käyttämäsi sisällönhallintajärjestelmän tukeen. Muista sisällyttää kirjeeseen kaikki tiedot, mm. - hosting-palveluntarjoajan kommentit tilanteestasi.