Frage : (2) Keine solche Akte oder Verzeichnis: exec von „/var/www/cgi-bin/index.cgi“ fiel aus

Hallo bin ich ein Neuer zu Perlcgi. Ich versuche, den hallo Weltcgi-Index laufen zu lassen, aber Apache hält, mir „500 zu geben interne Bediener-Störung“. So überprüfte ich meinen Apache-Störspeicher, um zu sehen, was die Ausgabe war, und ich erhalte diesem“ (2) keine solche Akte oder Verzeichnis: exec von „/var/www/cgi-bin/index.cgi“ verließ“ Störung, und unter diesem anderen Maschinenbordbuch erwähnt „vorzeitiges Ende der Indexüberschriften: index.cgi“. Ich versuchte, zu sehen, wenn die shibang Linie Unrecht war und zurück ging, den Perl-Index zu prüfen, und sie war adaequat. Ich kontrollierte auch den Perl-Weg doppelt, indem ich „tat, der Perl“ und meine shibang Linie recht waren. Ich addiere das Code-Stückchen, dass ich verwende, könnte jedermann mir erklären, was das Problem sein könnte und ein mögliches solution.

I morgens using ein ubuntu als mein OS. Ich habe web server als der Inhaber des Cgisortierfach Faltblatts zugewiesen und auch habe Erlaubnis der vollziehbaren Akte eingestellt, indem ich Chmod 755.
verwendete
1:
2:
3:
4:
#! usr/Sortierfach/Perl

Druck „Inhalt-Art: Text/HTML \ n \ n“;
Druck„hallo Welt“;

Antwort : (2) Keine solche Akte oder Verzeichnis: exec von „/var/www/cgi-bin/index.cgi“ fiel aus

Es kann nützlich sein, Ihre httpd.conf Akte zu überprüfen - /etc/httpd/conf/httpd.conf. Ich werde schätzen, dass dieses NICHT das Problem ist, weil dieses Standardkonfiguration ist. Aber Sie müssen sicher sein. Nach DocumentRoot zuerst suchen. Es sollte sein
DocumentRoot „/var/www“

Nach ScriptAlias dann suchen. Es sollte sein
ScriptAlias /cgi-bin/ „/var/www/cgi-bin/“

Persönlich mag ich gerade /cgi/index.cgi im Browsersadressenstab sehen, also habe ich
ScriptAlias /cgi/ „/var/www/cgi-bin/“

Es ist nicht notwendig, aber, wenn Sie www.yoursite.com/cgi-bin index.cgi laden wünschen dann, sollten Sie index.cgi auf der DirectoryIndex Linie mit einschließen
DirectoryIndex index.html index.htm index.cgi index.php

Ich schloß index.php mit ein, weil ich Sie sehe, das PHP-Modul ermöglichen zu lassen, also konnte es außerdem dort sein, falls Sie alle mögliche PHP-Anwendungen laufen lassen.

Und, da svqmuc sagt, sicher sein, dass dieses dort ist

        SetHandler Cgiindex

welches Apache erklärt, dass die Akten, die in .cgi oder in .pl beenden, Cgiindexe sind. Sie können entfernen
|\ .pl$
wenn Sie nicht überhaupt speichern, scripts Ihr Perl mit dieser Verlängerung.


Weitere Lösungen  
 
programming4us programming4us