HTTP 500 vidinio serverio klaidos gavimas iš svetainės

500 „Internal Server Error“ yra HTTP būsenos kodas, kuris nurodo nežinomą klaidą žiniatinklio serveryje. Jei bandote peržiūrėti svetainę ir gauti 500 vidinių serverio klaidų, problema nėra jūsų kompiuteryje, nešiojamame įrenginyje ar žiniatinklio naršyklėje. Klaida yra tik tame serveryje, kuriame yra svetainė.

500 klaidų vartotojo trikčių šalinimas

Nepaisant to, kad problema negali būti tiesiogiai valdoma ar pataisyta, yra keletas dalykų, kuriuos galite pabandyti ištaisyti problemą iš savo kompiuterio.

  1. Pabandykite iš naujo įkelti tinklalapį (paspauskite klaviatūros klavišą Ctrl + R arba naršyklėje spustelėkite piktogramą „Reload“), kad pamatytumėte, ar klaida pasikartoja.
  2. Pabandykite grįžti į tinklalapį vėliau. Svetainės žiniatinklio valdytojas arba žiniatinklio kūrėjai greičiausiai spręs problemą.
  3. Susisiekite su žiniatinklio valdytoju el. Paštu. Daugelis tinklalapių turi nuorodą, kad susisiektų su įmone (palaikymo el. Paštu) arba serveris surengė puslapį.

500 klaidų žiniatinklio valdytojo trikčių šalinimas

Jei esate atsakingas už scenarijų ar puslapį, kuriantį šią klaidą, šie veiksmai gali padėti nustatyti ir išspręsti klaidos priežastį.

Scenarijus nėra nustatytas kaip vykdomas

Visi į serverį įkelti scenarijai turi turėti vykdymo leidimus (pvz., Chmod 755 arba -rwxr-xr-x). Jei įkeliate failą per grafinę FTP programą, pvz., „FileZilla“, dešiniuoju pelės mygtuku spustelėkite failą serveryje ir spustelėkite Failo leidimai, kad pamatytumėte leidimus.

Failas nėra įkeltas kaip ASCII (tekstas)

Įkeliant bet kokį „Perl“ arba „PHP“ scenarijų failą, įsitikinkite, kad failas yra įkeltas ASCII (teksto) režimu, o ne dvejetainiu režimu. Jei jūsų programa įkeliama, failai ir režimas automatiškai nustatomi, pabandykite pereiti prie rankinio ir įsitikinkite, kad tai yra ASCII (teksto) režimas.

Perl scenarijus neturi „Shebang“ ar „Content-Type“

Jei įkeliate „Perl“ scenarijų (failai baigiasi „.pl“ arba „.cgi“), pirmoji eilutė turi būti „shebang“ ir prieš bet kurią spausdinimo komandą turinio tipo eilutė. Žemiau yra tai, ką mes rekomenduojame turėti visų jūsų „Perl“ scenarijų failo viršuje. Įrašius fatalstobrowser liniją į mūsų scenarijų, bus spausdinama bet kokia klaida naršyklės lange, kuri padeda išvalyti scenarijų, jei jame yra klaidų.

 #! / usr / bin / perl naudoti griežtus; naudoti CGI :: Carp qw (fatalsToBrowser carpout); spausdinti „Content-Type: text / html“, „n“; 

Neįkelti į teisingą katalogą

Įsitikinkite, kad scenarijaus failas įkeliamas į katalogą, kuriame yra vykdomieji leidimai. Perl failų atveju siūlome įkelti visus Perl failus į public_html / cgi-bin / directory.

Įsitikinkite, kad failas yra suformatuotas „Linux“

Jei sukūrėte ar redagavote scenarijaus failą „Windows“ redaktoriuje, pvz., „WordPad“ ar „Notepad“, šie redaktoriai gali nutraukti kiekvieną eilutę su kitokiu simboliu, kuris nutrauks bet kokį scenarijų. Jei turite prieigą prie korpuso paskyros kompiuteryje, į kurį įkeliate scenarijų, paleiskite „dos2unix“ komandą, kad galėtumėte konvertuoti šį failą į failą, kuriame nėra netinkamų simbolių.

Pataisyto scenarijaus tikrinimas

Galiausiai, jei visi aukščiau pateikti pasiūlymai nepadėjo ir jūs ir toliau patiriate problemą, patikrinkite, ar scenarijus neturi klaidų. Vartotojams, kurie naudoja Perl scenarijų, paleiskite šią komandą. Jei neturite prieigos prie „shell“ paskyros ar kompiuterio su „Perl“, siūlome kompiuteryje įdiegti „Perl“.

 perl-wc scriptname.pl