Schrift
[thread]9595[/thread]

Linux-Dateiendungen bei CGIs: Müssen die Dateiendungen .cgi /.pl sein?



<< >> 9 Einträge, 1 Seite
pktm
 2003-08-31 00:54
#95213 #95213
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!
Beim TWiki-Paket (das selbe CGI, wie wir es hier iun der FAQ verwenden) sind alle CGI-Scripten ohne Dataiendung angegeben.
Muss ich die jetzt immer extra anhängen oder erkennt mein Apache-Webserver, dass es sich um CGI's habdelt? Also im Datei-Explorer werden sie als CGIs angezeigt und es gibt ja die Möglichkeit in der Konfigaurationsdatei des Wikis einzustellen, ob man Dateiendungen benutzt oder nicht.
Andererseits ist in meiner httpd.conf angegeben, dass nur .cgi und .pl als CGI ausgeführt werden.
Was nun?
mfg pktm
http://www.intergastro-service.de (mein erstes CMS :) )
jan10001
 2003-08-31 01:21
#95214 #95214
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
So wie es scheint benutzt das Wiki "mod_rewrite", da ist im Apache Server enthalten, muß aber konfiguriert werden.

Siehe:
mod_rewrite

oder folgenden Artikel:
Artikel iX zu mod_rewrite

Grüße,
Jan\n\n

<!--EDIT|jan10001|1062278607-->
jan
 2003-08-31 01:29
#95215 #95215
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
das wiki benutzt mod_rewrite? mag sein, aber das hat doch erstmal nichts damit zu tun, oder?
im allgemeinen wird versuch, jede datei auszuführen, die im cgi-bin liegt...
macMeck
 2003-08-31 02:06
#95216 #95216
User since
2003-08-04
162 Artikel
BenutzerIn
[default_avatar]
Unter Linux sagt die Datei-Endung erstmal gar nix aus. Dafür hast du in deinem Skript ja die Shebang. Die sagt, wie das Skript ausgeführt werden soll.
Wenn du Apache benutzt hängt es natürlich sehr wohl von den Einstellungen der httpd.conf ab, was ausgeführt wird und was nicht. Ich glaube aber auch, dass im cgi-bin Verzeichnis erstmal alles ausgeführt wird. Die AddHandler-Geschichten werden meist auf Bereiche ausserhalb des cgi-bin angewandt (kommt natürlich drauf an, wo sie in der httpd.conf stehen)...

macMeck
It all works, as long as it's documented!
jan10001
 2003-08-31 10:45
#95217 #95217
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
Quote
das wiki benutzt mod_rewrite? mag sein,

Es ist nur ne Vermutung, ich weiß es nicht!

Quote
aber das hat doch erstmal nichts damit zu tun, oder?

Wenn es benutzt wird ja, mit mod_rewrite kannst du mit einen beliebigen Pfad ein zuvor festgelegtes CGI Script starten. Davon bekommt der Besucher aber nun garnichts mit, denn die URL in seinen Browser ändert sich ja nicht.
Strat
 2003-08-31 16:19
#95218 #95218
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=jan10001,31.08.2003, 08:45]
Quote
das wiki benutzt mod_rewrite? mag sein,

Es ist nur ne Vermutung, ich weiß es nicht![/quote]
Nein, es fuehrt nur alles als CGI aus, was in den Verzeichnissen liegt... mit mod_rewrite habe ich da nichts entdeckt...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
jan
 2003-08-31 16:32
#95219 #95219
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=jan10001,31.08.2003, 08:45]Wenn es benutzt wird ja, mit mod_rewrite kannst du mit einen beliebigen Pfad ein zuvor festgelegtes CGI Script starten. Davon bekommt der Besucher aber nun garnichts mit, denn die URL in seinen Browser ändert sich ja nicht.[/quote]
ja, aber auch das hat damit insofern nichts zu tun, als dass mod_rewrite keine cgi scripte startet, sondern nur url rewritet (yeah, cooles wort). wenn das cgi-script, auf dass intern umgelenkt wird, nicht gestartet werden kann, weil es zum beispiel in einem nichtausführbaren bereich liegt, den falschen chmod oder so hat, dann hilft auch alles rewriten nicht, dann läuft das script einfach nicht.
Strat
 2003-08-31 22:37
#95220 #95220
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
also der Virtualhost fuer das Wiki sieht folgendermassen aus:
Code: (dl )
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
28
29
<VirtualHost 217.172.179.49:80>
ServerName faq.perl-community.de
ServerAlias faq.perlcommunity.de wiki.perl-community.de wiki.perlcommunity.de faq.de.perl.org wiki.de.perl.org
DocumentRoot /srv/www/htdocs/web2/html
User web2
Group ftponly
ScriptAlias /cgi-bin/ /srv/www/htdocs/web2/html/cgi-bin/
php_admin_value open_basedir /srv/www/htdocs/web2/
php_admin_value upload_tmp_dir /srv/www/htdocs/web2/phptmp/
ScriptAlias /twiki/bin/ "/srv/www/htdocs/web2/html/bin/"
ErrorLog /srv/www/htdocs/web2/log/faq.perl-community.de.error.log
Alias /twiki/ "/srv/www/htdocs/web2/"
<Directory "/srv/www/htdocs/web2/html/bin">
Options +ExecCGI
SetHandler cgi-script
Allow from all
</Directory>
<Directory "/srv/www/htdocs/web2/html/pub">
Options FollowSymLinks +Includes
AllowOverride None
Allow from all
</Directory>
<Directory "/srv/www/htdocs/web2/html/data">
deny from all
</Directory>
<Directory "/srv/www/htdocs/web2/html/templates">
deny from all
</Directory>
</VirtualHost>
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
Dubu
 2003-09-01 00:38
#95221 #95221
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Die entscheidende Zeile ist eben die:
Code: (dl )
ScriptAlias /twiki/bin/ "/srv/www/htdocs/web2/html/bin/"

Damit wird dem Apache gesagt, dass Dateien im Verzeichnis /srv/www/htdocs/web2/html/bin/ unter der URI /twiki/bin/ zu erreichen ist und dass alle Dateien darin als Skripte unter mod_cgi behandelt werden sollen (siehe Apache-Doku). Besondere Dateiendungen sind nicht noetig.

Die Einstellung mit den Dateiendungen in TWiki.cfg ist nur fuer den Fall, dass man die TWiki-Skripte in ein Verzeichnis packen moechte, fuer das man keinen ScriptAlias setzen kann, z.B. wenn man mit eingeschraenkten Rechten auf einem Webserver arbeitet. Dann muss man normalerweise die Skripte mit einer Endung wie .cgi oder .pl versehen, um sie unter mod_cgi (oder mod_perl) ausfuehrbar zu machen. Damit man dann nicht in allen Skripten und Templates von TWiki die Skriptnamen aendern muss, gibt es dafuer diese Konfigurationsvariable.
<< >> 9 Einträge, 1 Seite



View all threads created 2003-08-31 00:54.