CGI scripte werden nur downgeloaded

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen
    möchte cgi scripte auf dem Pi ausführen. Das script wird leider nur downgeloaded anstatt ausgeführt.
    Finde auf dem Pi nicht das richtige Apache -Verzeichniss oder was auch immer.
    Hoffe jemand kann helfen.
    eiermann1

  • Auch wenn Brückentag ist gibt es viele die erst gegen Abend hier reinsehen, also nicht so ungeduldig.

    Schau doch man in /etc/apache2/sites-available/default welches Verzeichnis als Script-Alias gesetzt ist.


  • Auch wenn Brückentag ist gibt es viele die erst gegen Abend hier reinsehen, also nicht so ungeduldig.

    Schau doch man in /etc/apache2/sites-available/default welches Verzeichnis als Script-Alias gesetzt ist.

    Hallo orb
    auf meinem Image gibt es kein Verzeichniss unter apache2 das sites-available heisst,nur mods-available
    da drin ist eine Datei: php5_cgi mit diesemInhalt:
    # This file replaces old system MIME types and sets them only in the
    # Apache webserver

    # application/x-httpd-php phtml pht php
    # application/x-httpd-php3 php3
    # application/x-httpd-php4 php4
    # application/x-httpd-php5 php
    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
    SetHandler application/x-httpd-php
    </FilesMatch>
    # application/x-httpd-php-source phps
    <FilesMatch ".+\.phps$">
    SetHandler application/x-httpd-php-source
    # Deny access to raw php sources by default
    # To re-enable it's recommended to enable access to the files
    # only in specific virtual host or directory
    Order Deny,Allow
    Deny from all
    </FilesMatch>
    # Deny access to files without filename (e.g. '.php')
    <FilesMatch "^\.ph(p[345]?|t|tml|ps)$">
    Order Deny,Allow
    Deny from all
    </FilesMatch>

    # To enable PHP CGI site-wide, just uncomment following lines, however
    # as a security measure, it's recommended to enable PHP just in the
    # specific virtual servers or just specific directories

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
    AddHandler cgi-script .cgi
    AllowOverride All
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
    </Directory>
    Action application/x-httpd-php /cgi-bin/php5

    DEn Pi hab ich schon neu gestartet.Es wird das cgi script nur immer downgeloaded obwohl obiges enabled ist.
    Eiermann1


  • Wo hast Du denn Deine .cgi-Datei liegen?
    Dein ScriptAlias zeigt auf /usr/lib/cgi-bin/

    ja da liegt es und ausführbar. Es wird ja im Browser runtergeladen ansatt ausgeführt.

    ja da liegt es und ausführbar. Es wird ja im Browser runtergeladen ansatt ausgeführt.

    jetzt hab ich einen anderen Browser genommen, der frägt mich jetzt was er damit tun soll?
    downloaden oder ausführen, ja eigentlich ausführen aber doch auf dem Pi und nicht unter dem Windowsrechner.
    eiermann1

    Einmal editiert, zuletzt von eiermann1 (5. Mai 2013 um 19:33)

  • Moin zusammen,

    Hast Du bereits an irgendwelchen Einstellungen herumgeschraubt und die nicht zurückgesetzt?
    Es wäre wünschenswert, dass Du in der Lage bist, deine Änderungen wieder rückgängig zu machen, sonst wird das eine Sysiphus-Aufgabe.

    Ich hab' hier eine unmodifiziert Version der Apache2 Installation laufen.
    Ein script - in meinem Fall ein kleines C-Programm, das nur ein Hallo ausgibt - wird bei mir unter /usr/lib/cgi-bin nur dann gefunden, wenn ich in der URL http://pi/cgi-bin/<scriptname> eingebe. Bei der URL http://pi/<scriptname> kommt ein simples 404.
    Frage: was hast Du da verändert?
    Kannst Du mal bitte alle Deiner Änderungen rückgängig machen oder notfalls den Apache oder zumindest die Konfigurationsfiles neu installieren oder auf "Werkseinstellungen" zurüketzen?
    Wie hast Du den Apache installiert? Per Hand oder über apt-get?
    Was für eine Sprache verwendest Du in Deinem script?

    so, genug erstmal ...
    ciao und bis später in die Runde ...

    -ds-

  • Hallo eiermann1,

    wie dreamshader schon angedeutet hat ist deine URL etwas kurz geraten. Vielleicht versuchst du erstmal das CGI-Skript über folgende URL zu erreichen.

    Code
    http://192.168.1.7/cgi-bin/script.cgi

    Wenn der Browser dir eine Auswahl anzeigt ist es schon zu spät. Das CGI-Skript muss der Webserver erkennen und dann auch ausführen. Da hat der Client noch gar nichts damit zu tun (außer dass er es aufgerufen hat).

    Gruß Georg

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!