Lieber Besucher, herzlich willkommen bei: Ubuntu-Forum & Kubuntu-Forum | www.Ubuntu-Forum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.
Quellcode |
|
1 2 3 4 |
<Directory /var/www> Options +ExecCGI AddHandler cgi-script .cgi .pl </Directory> |
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »koepke« (07.02.2015, 17:35)
Ja, in dieser -> http://httpd.apache.org/docs/2.2/howto/cgi.htmlHabt ihr einen Tipp in welche Richtung ich suchen muss?
Dem Verzeichnis /var/www habe ich inzwischen die Berechtigung rwxrwxrwx zugeteilt. Ebenso den den Dateien test.pl und test.cgi.
Weder noch.ein Rechteproblem wie auch ein "Finde die Datei nicht"-Problem
Wie meinst du das genau mit "Aufruf von..."?bei einem Aufruf von
/var/www/test.pl
Quellcode |
|
1 2 3 4 5 6 7 8 9 |
#!/user/bin/perl -w use strict; print "Content-type: text/html\n\n”; print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">', "\n"; print "<html><head><title>Test-Ausgabe</title></head><body>\n; print "<h1>Hurra, es klappt!</h1>\n; print "</body></html>\n; |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<html> <body> <h1>It works!</h1> <p>This is the default web page for this server.</p> <p>The web server software is running but no content has been added, yet.</p> <p>...</p> <h2>Scripte liegen unter /var/www/</h2> <p><a href="test.pl">Hier geht es zum Test ... (test.pl)</a></p> <p><a href="test.cgi">Hier geht es zum Test ... (test.cgi)</a></p> <p><a href="wetter.cgi">Hier geht es zum Wetter... (wetter.cgi)</a></p> <p>...</p> <h2>Scripte liegen unter /user /lib/cgi-bin/...</h2> <p><a href="/usr/lib/cgi-bin/test.pl">Hier geht es zum Test ... (test.pl)</a></p> <p><a href="/usr/lib/cgi-bin/test.cgi">Hier geht es zum Test ... (test.cgi)</a></p> <p><a href="/usr/lib/cgi-bin/wetter.cgi">Hier geht es zum Wetter... (wetter.cgi)</a></p> <p>...</p> <p>Externer Link</p> <a href="http://www.tagesschau.de/">ARD Tagesschau</a> Nachrichten<br> </body> </html> |
Quellcode |
|
1 2 3 4 5 6 7 8 9 |
#!/usr/bin/perl -w use strict; print "Content-type: text/html\n\n"; print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">', "\n"; print "<html><head><title>Test-Ausgabe</title></head><body>\n; print "<h1>Hurra, es klappt!</h1>\n"; print "</body></html>\n"; |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
<IfModule alias_module> ScriptAlias /cgi-bin/ "/var/www/" <Location /cgi-perl> SetHandler perl-script PerlResponseHandler Modperl::PerlRun PerlOptions +ParseHeaders Options +ExecCGI </Location> </IfModule> <Directory "/var/www"> AllowOverride None Options None Options +ExecCGI Order allow,deny Allow from all AddHandler cgi-script .cgi .pl </Directory> <Directory "/usr/lib/cgi-bin"> AllowOverride None Options None Options +ExecCGI Order allow,deny Allow from all AddHandler cgi-script .cgi .pl </Directory> |
Muss mich da jetzt erstmal reinlesen (damit ich verstehe worum es eigentlich geht...).
Diesen Pfad gab's bis dato nicht.<Location /cgi-perl>
Könnte z.B. daran liegen:(Vermutlich baut das Script einen Crash.)
Quellcode |
|
1 2 3 |
print "<html><head><title>Test-Ausgabe</title></head><body>\n; print "<h1>Hurra, es klappt!</h1>\n; print "</body></html>\n; |
Quellcode |
|
1 2 3 4 5 6 7 |
<Directory /var/www/> AddHandler cgi-script .cgi .pl Options Indexes FollowSymLinks Options +ExecCGI AllowOverwride None Require all granted </Directory> |
Quellcode |
|
1 2 3 4 5 6 |
ScriptAlias /cgi-bin/ /var/www/html/ <Direktory /var/www/html> AllowOverride None Options +ExecCGI - MultiViews +SymLinksIfOwnerMatch Requires all granted </Directory> |
Quellcode |
|
1 2 3 4 5 6 7 8 |
#!/usr/bin/perl -w use strict; use CGI; print header(); print "Content-type: text/plain;charset=utf-8\n\n"; print "<html><head><title>Test-Ausgabe</title><//head>\n"; print "<body><h1>Hurra, es klappt!</h1>/body></html>\n"; exit; |
Momentan dürfte das nicht viel bringen, denn wenn die wörtlich so aussehen wie hier, ist die zweite nicht nur unnötig, sondern wird auch gar nicht verwendet. Du solltest dir die Apache-Logs ansehen. (Tipp: suche nach "Direktory"...)Vermutlich könnte ich die beiden Directory-Direktiven noch clever zusammenführen
für das Verzeichnis .../www und alle darunterliegenden Verzeichnisse
Options +ExecCGI - MultiViews +SymLinksIfOwnerMatch
Dafür fehlt wahrscheinlich das entsprechende Perl-Modul. Wie du siehst brauchst du es aber ohnehin nicht, da du die Header ja eh selber schreiben lässt.Undefined subroutine &main::header
Gut, daß die meisten Browser, dank M$ sehr tolerant sind...print "<html><head><title>Test-Ausgabe</title><//head>\n";
print "<body><h1>Hurra, es klappt!</h1>/body></html>\n";
Sponsorenwerbung: |
Hardware, Computer, PCs, Notebooks & Laptops mit Linux |
Forensoftware: Burning Board®, entwickelt von WoltLab® GmbH
Individuelle Notebooks Laptops - Individuelle Computer PCs - Linux Notebooks & Computers
Lastminute - Ubuntu Linux - Abmahnung - Geek und Nerd Shirt Shop
T-Shirts - sanierung wien