cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 08:21

Hallo,
ich habe jetzt nach Jahren erstmalig wieder mit einem CGI Script zu tun (muss was prüfen).
Ich nutze die aktuellste Xampp-Version auf XP.

Das Script ist ein Gästebuch aus der Inspire-World - Schmiede. Von 2006. Irgendwann in den vergangenen Wochen hat das Script aufgehört zu funktionieren und ich bekomme einen 403er Fehler angezeigt.
"Forbidden
You don't have permission to access /cgi-bin/Guestbook/guest.cgi on this server.
Apache Server at www.domain.de <http://www.domain.de> Port 80"


Nun wollte ich mal schauen, ob es evtl. am Server liegt, und dazu das Script in Xampp ausprobieren. Doch ich habe nach Erstellung des cgi-bin Ordner´s unter htdocs das gleiche Problem wie auf dem Server :cry:

Da ich aber erstmal grundsätzlich wissen möchte, wie man CGI Scripte in Xampp installiert, bitte ich hier um Hilfe.
Folgende Struktur habe ich:
E:/xampp/htdocs (localhost)

cgi-bin/guestbook/(Dateien)
guestbook/(Dateien)

Ist das evtl. falsch? :?:

Danke schon mal für Eure Hilfe. 8)
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Nobbie » 18. September 2014 10:13

MK70 wrote: Doch ich habe nach Erstellung des cgi-bin Ordner´s unter htdocs das gleiche Problem wie auf dem Server :cry:


Das ist auch schon der Fehler - bei Xampp ist bereits ein cgi-bin Ordner angelegt neben (nicht unter) htdocs. Den solltest Du nehmen.

Xampp ist allerdings auch so konfiguriert, dass man die cgi-Scripts auch irgendwo unter htdocs ablegen kann. Das einzige (das ist wirkich das einzige), was eben NICHT funktioniert, ist der Versuch, NOCH EINEN cgi-bin Ordner (unter htdocs) anzulegen. Der wird als einziger nicht gefunden.

Die Direktive ScriptAlias entscheidet darüber, wo Apache den Ordner cgi-bin erwartet. Die Option ExecCGI wiederum entscheidet darüber, dass man auch andere Ordner (siehe <Directory ..> Klausel) benutzen kann.

ABER: das wird Dir alles nicht helfen, das wird den Fehler des Servers weder reproduzieren noch lösen. In sofern ist das verlorene Liebesmüh. Du musst auf dem Server in jedem Fall den error_log auswerten, da steht genauer drin, wieso ein Error 403 (= Datei nicht gefunden) auftritt, insbesondere steht da genauer drin, was denn nicht gefunden wird.

P.S.: Ich sehe gerade in der Fehlermeldung, dass dort "Guestbook" groß geschrieben ist - ist das vielleicht schon der Fehler? Unten schreibst Du es klein. Ist das Dein eigener Server, oder nur ein sog. "Webspace" bei einem Massenhoster? Wenn letzteres, hat es vielleicht irgendeine Umstellung gegeben?
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 11:13

Nobbie wrote:
MK70 wrote: Doch ich habe nach Erstellung des cgi-bin Ordner´s unter htdocs das gleiche Problem wie auf dem Server :cry:

Das ist auch schon der Fehler - bei Xampp ist bereits ein cgi-bin Ordner angelegt neben (nicht unter) htdocs. Den solltest Du nehmen.

Ups... :roll: :lol:
Danke für den Hinweis :)

Xampp ist allerdings auch so konfiguriert, dass man die cgi-Scripts auch irgendwo unter htdocs ablegen kann. Das einzige (das ist wirkich das einzige), was eben NICHT funktioniert, ist der Versuch, NOCH EINEN cgi-bin Ordner (unter htdocs) anzulegen. Der wird als einziger nicht gefunden.

Die Direktive ScriptAlias entscheidet darüber, wo Apache den Ordner cgi-bin erwartet. Die Option ExecCGI wiederum entscheidet darüber, dass man auch andere Ordner (siehe <Directory ..> Klausel) benutzen kann.

Ok, den habe ich vor lauter "brass" übersehen und jetzt den Ordner für cgi´s in den Ordner verschoben. 8)
Das Script selbst verlangt dann den Aufruf: -> domain/cgi-bin/guestbook/installer.cgi. (muss ja installiert werden). Aber auch da bekomme ich einen Fehler angezeigt:
Serverfehler!
Die Anfrage kann nicht beantwortet werden, da im Server ein interner Fehler aufgetreten ist.
Fehlermeldung:
couldn't create child process: 720003: installer.cgi
Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 500
localhost
Apache/2.4.10 (Win32) OpenSSL/1.0.1h PHP/5.4.31

Wie müsste ich das aufrufen?
So war meine Idee: -> http://localhost/cgi-bin/guestbook/installer.cgi

ABER: das wird Dir alles nicht helfen, das wird den Fehler des Servers weder reproduzieren noch lösen. In sofern ist das verlorene Liebesmüh. Du musst auf dem Server in jedem Fall den error_log auswerten, da steht genauer drin, wieso ein Error 403 (= Datei nicht gefunden) auftritt, insbesondere steht da genauer drin, was denn nicht gefunden wird.

Im error.log steht nur folgendes drin, mehr nicht (von Sonntag):
"[Sun Sep 14 15:30:43 2014] [error] [client 84.60.179.61] client denied by server configuration: xxx/html/cgi-bin/Guestbook/guest.cgi, referer:
http://hundeplatz-bretten.de/Gastebuch/ ... ebuch.html"

Das Script ist von Inspire-World:
-> http://www.inspire-world.de/cgiscripte8.php#guestbook

Mein Hoster schrieb dann noch folgendes:
welches der Module benutzen sie denn?
-rw-r--r-- 1 root root 70 Mar 3 2013 authz_dbm.load
-rw-r--r-- 1 root root 78 Mar 3 2013 authz_default.load
-rw-r--r-- 1 root root 82 Mar 3 2013 authz_groupfile.load
-rw-r--r-- 1 root root 72 Mar 3 2013 authz_host.load
-rw-r--r-- 1 root root 74 Mar 3 2013 authz_owner.load
-rw-r--r-- 1 root root 72 Mar 3 2013 authz_user.load
Hier die gesamte Fehlermeldung:
--5515b01b-A--
[15/Sep/2014:15:35:30 +0200] VBbrIk6KWcYAAB9FcaQAAAAc 92.198.49.220 62838 78.138.89.198 80
--5515b01b-B--
GET /cgi-bin/Guestbook/guest.cgi HTTP/1.1
Host: http://www.xxx.de
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de,de-DE;q=0.97,en-US;q=0.95,en;q=0.92,fr-fr;q=0.89,fr;q=0.86,de-formal;q=0.84,en-gb;q=0.81,ru-ru;q=0.78,ru;q=0.76,de-AT;q=0.73,de_DE.UTF-8;q=0.7,de_DE.UTF;q=0.68,nl-NL;q=0.65,nl;q=0.62,es-ES;q=0.59,es;q=0.57,uk-UA;q=0.$
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://xxx.de/Gastebuch/body_gastebuch.html
Connection: keep-alive
Cache-Control: max-age=0

--5515b01b-F--
HTTP/1.1 403 Forbidden
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 248
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=iso-8859-1

--5515b01b-H--
Apache-Error: [file "/build/apache2-eCM7C9/apache2-2.2.16/modules/aaa/mod_authz_host.c"] [line 311] [level 3] client denied by server configuration: /var/www/xxx/html/cgi-bin/Guestbook/guest.cgi, referer: http://xxx.de$
Stopwatch: 1410788130176782 5418 (- - -)
Stopwatch2: 1410788130176782 5418; combined=166, p1=78, p2=0, p3=4, p4=70, p5=14, sr=0, sw=0, l=0, gc=0
Producer: ModSecurity for Apache/2.7.7 (http://www.modsecurity.org/); 200911012341.
Server: Apache
Engine-Mode: "ENABLED"

--5515b01b-Z--

Nachdem ich geschrieben habe, das ich da gerade so gar nicht mehr mitkomme (bin kein Serverexperte, daher auch Resellerpaket!), kam zurück:

so wie ich die Fehlermeldung, siehe letzte Mail verstehe, benutzen sie das apache Modul authz_host, was auch enabled ist, aber verbieten etwas. Versuchen sie mal wie hier beschrieben eine .htaccess Datei zu verwenden: http://httpd.apache.org/docs/2.2/mod/mo ... _host.html

Und auch da bin ich nicht schlau draus geworden :(
Ich habe mir auf der Seite mal einiges angesehen, aber naja... :roll:

P.S.: Ich sehe gerade in der Fehlermeldung, dass dort "Guestbook" groß geschrieben ist - ist das vielleicht schon der Fehler? Unten schreibst Du es klein. Ist das Dein eigener Server, oder nur ein sog. "Webspace" bei einem Massenhoster? Wenn letzteres, hat es vielleicht irgendeine Umstellung gegeben?

Auf dem Kunden-Web sind beide Ordner mit Großen "G" angelegt. Ich habe die Ordner eben mal mit kleinem "G" geschrieben, aber auch das brachte keine Besserung, daran liegt es also nicht... :?

Ich habe ein Resellerpaket bei einem großen Hoster aus Berlin. Und das web, auf welchem das Gästebuch nicht läuft, ist an einen Verein vermietet. Ich habe aber zusätzlich auf dem gleichen Server (weiteres Webpaket) mal das Gästebuch versucht zu installieren, auch das geht nicht. Dann habe ich versucht auf meinem Einzelpaket (anderer Server, aber gleicher Hoster) versucht das GB zu installieren, auch das geht nicht. Gleicher Fehler. :(
Daher wollte ich das jetzt mal mit xampp probieren. Evtl. kann das GB ja PHP 5.4 nicht ab... :(
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Nobbie » 18. September 2014 12:57

Das ist ziemlich wildes Zeug - wenn das ein PHP Script ist, dann wird das heutzutage auch beispielsweise als "guestbook/guest.php" (siehe die Endung - nicht *.cgi, sondern *.php) installiert. Die Tatsache, dass es aber *.cgi benannt wird, bedeutet dass es auf eine andere Weise vom Server angestoßen wird als es heute bei PHP eigentlich der Fall ist. Das ist technisch machbar, aber man muss wissen, wo die Unterschiede sind.

Das ist offensichtlich ein sehr altes Script und es wird möglicherweise so auf aktuellen Hostern nicht ohne Eingriff laufen.

Was ich aber darüber hinaus nicht verstehe:

Irgendwann in den vergangenen Wochen hat das Script aufgehört zu funktionieren und ich bekomme einen 403er Fehler angezeigt.


Ich interpretiere das so, dass es dieses Script auf diesem Server bisher tat. Und dass es das, ohne jeden Eingriff Deinerseits, jetzt nicht mehr tut. WENN dem so ist, dann muss doch der Provider irgendetwas geändert haben??

Außerdem ist gut vorstellbar, dass das Script eine ältere PHP Version benötigt als 5.4, nur verstehe ich das eben nicht, wenn es bisher lief, was hat sich denn geändert? Ist PHP 5.4 jetzt neu oder was?
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 13:11

Ich habe den Seitenbetreiber auch nochmal nach der letzten Aktivität im Gästebuch gefragt und er sagte mir, dass er nicht wisse, wann es das das letzte mal getan habe. Das heißt, es kann auch schon länger her sein. :(

Ich habe per htaccess auch schon mal auf 5.3 runter geschraubt, hat aber auch nichts gebracht. :(

Das Script ist von 2006. Der Seitenbetreiber von Inspire-World hat, wie ich eben auch erst lesen durfte, aber wohl gewechselt und es soll an allen Scripten gearbeitet werden, welche eine Aktualisierung benötigen... :P
Vielleicht findet man dort ja eine Lösung... :D

5.4 ist erst vor ein paar Wochen installiert worden. 8)
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Nobbie » 18. September 2014 13:29

Ich habe mal aus Interesse bei inspire-world geschaut, da gibt es nur ein einziges Produkt was nach Gästebuch klingt, das ist ein Gästebuchserver und der ist aber in Perl programmiert und nicht in PHP.

Das ist kostenpflichtig und bei der Serverumgebung ist Windows nicht aufgeführt (Serverbetriebssystem Unix, Linux oder FreeBSD + Apache.). Wenn es das ist, was Du da hast, wird es nicht auf Xampp/Windows laufen und wenn es etwas total anderes ist, dann sehe ich nicht, dass da an irgendeinem PHP Gästebuch entwickelt wird.
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Altrea » 18. September 2014 13:38

Es gibt auch ein kostenloses GGI/PERL Gästebuch Script auf der Seite.
Kurz mal runtergeladen und Dateinamen mit den Informationen hier verglichen, das wird es wohl sein.
Hat aber mit PHP nix zu tun.
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11935
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Nobbie » 18. September 2014 14:21

Altrea wrote:Kurz mal runtergeladen und Dateinamen mit den Informationen hier verglichen, das wird es wohl sein.
Hat aber mit PHP nix zu tun.


Das habe ich mal heruntergeladen - und auf Xampp unter Ubuntu eingespielt. Ein bißchen Fummelei, ein paar Scripte angepasst - läuft! Mit Xampp/Apache/Perl/MySQL.

Die Fehlermeldung auf dem Server heißt auch etwas anderes, der Hinweis von dem Support ist gar nicht so schlecht. Vermutlich liegt da im cgi-bin Verzeichnis eine .htaccess mit einer Allow from Klausel, die auf eine IP (oder einen Bereich) verweist, wo der aufrufende Server drauf läuft. Der hat wahrscheinlich irgendwann eine neue IP bekommen und seitdem verweigert das Auth Modul den Zugriff. So liest es sich zumindest inzwischen für mich.

Hier bei mir wird keine .htaccess vorinstalliert, das hat wahrscheinlich irgendwann mal vor Jahren jemand für diesen "Kunden" getan.
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 14:42

Wie oben bereits geschrieben:
-> http://www.inspire-world.de/cgiscripte8.php#guestbook

Ein htaccess ist im setup-Ordner drinne:
Inhalt:
Code: Select all
AuthType Basic
<Limit GET>
   Order Allow,Deny
   Deny from all
   Allow from apache.org
</Limit>
<Limit POST>
   Order Allow,Deny
   Deny from all
   Allow from apache.org
</Limit>

Diese habe ich auch mal gelöscht, doch da kam auch nichts anderes...


Im Rootverzeichnis liegt noch die Webbasierende htaccess-Datei:
Code: Select all
### zum Aktivieren in ".htaccess" umbenennen
### entsprechende Anweisung auskommentieren

### php 4.9 aktivieren ###
AddHandler php4-fastcgi .php

### Konfiguration von php 5.2 ändern
#AddHandler php52-fastcgi .php

### php 5.3 aktivieren ####
#AddHandler php53-fastcgi .php

### php 5.4 aktivieren ####
#AddHandler php54-fastcgi .php

<IfModule mod_php.c>
php_value suhosin.post.max_vars 2000
php_value suhosin.request.max_vars 1500
php_value suhosin.get.max_vars 1500
php_value display_errors 1
</IfModule>


So, wieder Ihr... :P :D :mrgreen:
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 16:13

Nobbie wrote:Das habe ich mal heruntergeladen - und auf Xampp unter Ubuntu eingespielt. Ein bißchen Fummelei, ein paar Scripte angepasst - läuft! Mit Xampp/Apache/Perl/MySQL.

Was hast Du denn geändert?
Ich würde ja gern mal schauen, ob ich das unter xampp ans Laufen bringe 8)
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 16:16

Nobbie wrote:Die Fehlermeldung auf dem Server heißt auch etwas anderes, der Hinweis von dem Support ist gar nicht so schlecht. Vermutlich liegt da im cgi-bin Verzeichnis eine .htaccess mit einer Allow from Klausel, die auf eine IP (oder einen Bereich) verweist, wo der aufrufende Server drauf läuft. Der hat wahrscheinlich irgendwann eine neue IP bekommen und seitdem verweigert das Auth Modul den Zugriff. So liest es sich zumindest inzwischen für mich.

Hier bei mir wird keine .htaccess vorinstalliert, das hat wahrscheinlich irgendwann mal vor Jahren jemand für diesen "Kunden" getan.


Die liegt bereits im entpackten Verzeichnis "setup" mit dabei. :P
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Nobbie » 18. September 2014 16:22

MK70 wrote:Was hast Du denn geändert?


Dateiberechtigungen und die sog. Shebang Zeile. Und vor allem unter Ubuntu (nicht unter Windows). Wenn Linux allerdings Neuland für Dich ist, dann ist das einfach zu viel für den Anfang. Es muss auch händisch eine Datenbank angelegt werden.

Was die Fehlermeldung betrifft, frag doch mal den Provider, ob die in der Serverkonfiguration irgendetwas angegeben haben, dass man cgi-Scripte möglicherweise nicht direkt von anderen Servern starten kann oder ähnlich. Ich kann nichts mehr machen als wie bis hier.
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 18. September 2014 16:34

Von meinem Webhoster habe ich nicht mehr als Antwort bekommen, als das, was im folgenden Beitrag bereits geschrieben wurde:

-> viewtopic.php?p=238091#p238091 :?

Ab:
"Mein Hoster schrieb dann noch folgendes:"
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby Nobbie » 18. September 2014 16:44

MK70 wrote:Von meinem Webhoster habe ich nicht mehr als Antwort bekommen, als das, was im folgenden Beitrag bereits geschrieben wurde:


Ohne genaue Kenntnis der Serverkonfiguration ist keine weitere Hilfe möglich. Ich verstehe nach wie vor sowieso nicht, wieso und wann und warum das Gästebuch "auf einmal" nicht mehr läuft. Irgendeine Information bekomme ich offensichtlich nicht.
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04

Re: cgi-bin Ordner - wie stelle ich an, dass er funktioniert

Postby MK70 » 19. September 2014 16:04

Hallo Nobbie,

ich kann Dir leider auch keine genaueren Angaben (zum Gästebuch) machen, weil ich selbst keine habe. :roll:

Das GB wird von einem Hundeverein betrieben, der bei mir ein Web gemietet hat. Vor ein paar Tagen kam der Webbi der Seite mit der Bitte zu mir, mal zu prüfen, warum das GB nicht läuft. Wann das GB letztmalig gelaufen haben kann, ist nicht nachvollziehbar. Der letzte Eintrag ist von August 2012. :?

Hier in diesem Forum habe ich mich gemeldet, da ich das GB unter Xampp nicht ans laufen bringen kann. :?

***
Nachtrag:
Ich kann scheinbar gar nicht auf den cgi-Ordner zugreifen... :shock:
Auch der 403er Fehler... :(
MK70
 
Posts: 66
Joined: 26. November 2004 18:13
XAMPP version: 7
Operating System: win10

Next

Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 29 guests