Autor Zpráva
blizz_boz
Profil
Potreboval by som zistiť kde na hostingu mám uložený Perl interpreter. Do adresáru cgi-bin som nakopíroval perlovský cgi skript bohužiaľ mi to stále vyhadzuje chybu:

500 Internal Server Error

The server encountered an internal error or
misconfiguration and was unable to complete
your request.


skúšal som už viacero možností:

#!perl


#!/usr/bin/perl


ani jedna nefunguje.
imploder
Profil
blizz_boz
jestli máš přístup k shellu přes SSH, tak napiš
type perl
blizz_boz
Profil
no prístup k shellu nemám... :/

ale perl interpreter zvykne byť vačšinou umiestnený v adresári "/usr/bin/" nie?
imploder
Profil
blizz_boz
ale perl interpreter zvykne byť vačšinou umiestnený v adresári "/usr/bin/" nie?
Může, ale nemusí. Může být nainstalovaný v /usr/local/bin - tam bývají programy kompilované přímo na daném počítači.

Bude asi lepší, když kvůli přenositelnosti místo cesty natvrdo dáš
#!/usr/bin/env perl

- to by mělo perl spustit. Nechápu proč, ale vyhledat interpreter podle jména v adresářích v proměnné PATH - jak to normálně shell dělá - tady nejde. /usr/bin/env tohle řeší.
http://en.wikipedia.org/wiki/Shebang_(Unix)#Portability
blizz_boz
Profil
imploder
no inak písal som na hosting podporu a mal som pravdu perl interpreter je umiestnený presne tam kde som očakával (/usr/bin/perl) neviem prečo teda môj testovací skript nefunguje... skúšal som aj koncovku .cgi aj .pl a stále mi to vyhadzuje rovnakú chybu:

http://ipremiere.eu/cgi-bin/test.cgi

súbor test.cgi obsahuje takýto kód:

#!/usr/bin/perl
print "Content-Type: text/html\n\n";
print "Hello, world!";

a atribúty súboru som nastavil na 777

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: