Wie CGI in anderem Verzeichnis aktivieren

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
suleiman
Beiträge: 193
Registriert: 21.12.2016 04:09:41

Wie CGI in anderem Verzeichnis aktivieren

Beitrag von suleiman » 15.02.2017 17:08:48

Hey ho,

CGI laufen bei mir nur unter /usr/lib/cgi-bin/.
Wie kann ich für andere Verzeichnisse CGIs auch aktivieren ?

In den folgenden Konfiguration soll CGI aktiviert werden ...

Code: Alles auswählen

admin@suse:~$ cat /etc/apache2/conf-available/additional_directories.conf 
## privater Bereich

Alias /test02/ /var/www/test02/
Alias /rubbel-die-katz/ /var/www/rubbel-die-katz/

<Directory /var/www/test02/>
	Options Indexes ExecCGI FollowSymLinks
        AllowOverride AuthConfig
	AuthType Basic
	AuthName "Heimat 2.0"
	AuthBasicProvider file
	AuthUserFile /etc/apache2/passwd
	Require valid-user
</Directory>

<Directory /var/www/rubbel-die-katz/>
        #Options Indexes FollowSymLinks
	Options Indexes ExecCGI FollowSymLinks
	DirectoryIndex script.sh
        AllowOverride AuthConfig
        AuthType Basic
        AuthName "Heimat 2.0"
        AuthBasicProvider file
        AuthUserFile /etc/apache2/passwd
        Require valid-user
</Directory>
Die Option ExecCGI scheint so nicht zu funktionieren.
Der Browser will iimmer nur das Skript runter laden.
Was mach ich falsch ?

Nachtrag:
Keine Fehlermeldung oder so, ich kann einfach die Skripts runter laden.
Wie gesagt unter /usr/lib/cgi-bin kann ich alle Skripts ausführen.

Code: Alles auswählen

admin@suse:~$ apt-cache policy apache2
apache2:
  Installiert:           2.4.10-10+deb8u7
  Installationskandidat: 2.4.10-10+deb8u7
  Versionstabelle:
 *** 2.4.10-10+deb8u7 0
        500 http://ftp.de.debian.org/debian/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status
     2.4.10-10+deb8u5 0
        500 http://security.debian.org/ jessie/updates/main amd64 Packages

Code: Alles auswählen

admin@suse:~$ cat /etc/apache2/conf-enabled/cgi-bin.conf 
<IfModule mod_alias.c>
	<IfModule mod_cgi.c>
		Define ENABLE_USR_LIB_CGI_BIN
	</IfModule>

	<IfModule mod_cgid.c>
		Define ENABLE_USR_LIB_CGI_BIN
	</IfModule>

	<IfDefine ENABLE_USR_LIB_CGI_BIN>
		ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
		<Directory "/usr/lib/cgi-bin">
		        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
			AllowOverride AuthConfig
		        AuthType Basic
		        AuthName "Suleiman's Heimat 2.0"
		        AuthBasicProvider file
		        AuthUserFile /etc/apache2/passwd
		        Require valid-user
		</Directory>
	</IfDefine>
</IfModule>


rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Wie CGI in anderem Verzeichnis aktivieren

Beitrag von rendegast » 18.02.2017 15:03:15

<Directory /var/www/test02/>

<Directory /var/www/rubbel-die-katz/>
Mal versuchen mit Verzeichnissen
/var/www/test02/cgi-bin/
/var/www/rubbel-die-katz/cgi-bin/

Hier lighttpd, der Inhalte solcher Verzeichnisse wegen <was-weiss-ich> automatisch als ausführbar ansieht.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

pferdefreund
Beiträge: 3791
Registriert: 26.02.2009 14:35:56

Re: Wie CGI in anderem Verzeichnis aktivieren

Beitrag von pferdefreund » 20.02.2017 08:43:26

Ich habe das mal so gelöst in /etc/apache2/conf.d als Datei - na was wohl - pferd.
Die 2 ScriptAlias regeln das wohl und in pferdscr liegen meine eigenen.

Code: Alles auswählen

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /cgi-bin1 /var/www/pferdscr
<Directory /www/pferdscr>
  Options FollowSymLinks +ExecCGI
  AddHandler cgi-script .cgi
  AllowOverride All
</Directory>

Antworten