Toon posts:

[RedHat 7.2] 500 error bij uitvoeren cgi scripts

Pagina: 1
Acties:

Verwijderd

Topicstarter
*nog een poging* ;)

als ik een cgi-script aanroep vanuit m'n browser krijg ik een 500 (Internal Server) error. In mijn log lees ik:

No such file or directory: exec of www/cgi-bin/perl_test.cgi failed

Premature end of script headers: /www/cgi-bin/perl_test.cgi

Op http://www.apache.org/docs las ik dat dit kan betekenen dat de permissies niet goed staan (ik heb ze op 755 staan) of dat het path niet klopt (staat op #!/usr/bin/perl). Dit is volgens mij het standaard path en ik neem aan dat het klopt. Ik weet dat er een commando is om het perl-path weer te geven, maar ik weet niet welk...

wat doe ik verkeerd?:?

Verwijderd

'which perl'

Verwijderd

Topicstarter
juist, die ja :)

dan vermeld ie dus /usr/bin/perl en dat staat dus ook bovenaan m'n cgi bestanden. Wat kan er verder nog mis zijn:?

Verwijderd

Topicstarter
ik heb inmiddels al vanalles geprobeerd. Ik heb ExecCGI toegevoegd aan httpd.conf. Het maakt blijkbaar ook geen verschil of het .cgi of .pl bestanden zijn.

HELP!?

Verwijderd

Topicstarter
zelfs als ik gewoon een index.html in de cgi-bin zet werkt het niet. Dan krijg ik dezelfde error (500). Het heeft dus niets met een fout in het script te maken of zo.

  • 0siris
  • Registratie: Augustus 2000
  • Laatst online: 17-08 02:11
kijk eens in je error.log
( in mijn geval: tail -n 40 /var/log/apache/error.log )

ach...in een volgend leven lach je er om!


Verwijderd

Topicstarter
/var/log/apache heb ik niet, wel /var/log/httpd.

en daar staat in de error log dus wat ik in m'n eerste post meldde:

exec format error: exec of /www/cgi-bin/index.html failed

Premature end os script headers: /www/cgi-bin/index.html

  • 0siris
  • Registratie: Augustus 2000
  • Laatst online: 17-08 02:11
verwacht Apache in /www/cgi-bin/ wel .html files?

ach...in een volgend leven lach je er om!


Verwijderd

Topicstarter
hm, geen idee.
Maar hij verwacht wel .cgi bestanden; ik heb in httpd.conf staan:

ScriptAlias /cgi-bin/ "/www/cgi-bin/"

<Directory "/www/cgi-bin">
Options ExecCGI
AllowOverride none
Order allow,deny
Allow from all
</Directory>

d'as toch goed? :?

  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 17:20

odysseus

Debian GNU/Linux Sid

Je hebt niet per ongeluk vanaf een Windows-systeem (of een Mac) geupload? Dat levert namelijk kappotte regeleinden op, wat ook voor een 500 kan zorgen. FTP-put in ascii- of binary-mode zou ook nog oorzaak van het probleem kunnen zijn.

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


Verwijderd

Topicstarter
kapotte regeleinden?
Bedoel je daar soms mee dat achter elke regel een witte M komt te staan? Of is dat weer iets anders?

  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 17:20

odysseus

Debian GNU/Linux Sid

Inderdaad, die '^M' die je dan ziet staan. Het probleem wordt veroorzaakt doordat Windows zowel een Carriage Return als een LineFeed gebruikt voor regeleinden, waar Unix/Linux alleen Carriage Return gebruikt (overigens gebruikt de Mac alleen LineFeed, maar dat is weer een ander verhaal). Met een programma als 'dos2unix' of 'recode' kun je dit oplossen.

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


  • Hmmbob
  • Registratie: September 2001
  • Laatst online: 15:50
of gewoon editten op je linuxbak...

Sometimes you need to plan for coincidence

Pagina: 1