Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]3111[/thread]

mod_rewrite und beliebig lange URL's



<< |< 1 2 >| >> 20 Einträge, 2 Seiten
jan10001
 2004-04-25 16:48
#30720 #30720
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
Also irgendwie werde ich nicht fündig, es geht um folgendes:

Ich habe beliebig lange URL's (also mit mehreren Unterverzeichnissen)
z.B.
http://www.test.de/verzeichnis/yyyy/xxxx/
http://www.test.de/verzeichnis/uuuu/xxxx/hhh/
http://www.test.de/verzeichnis/kkkk/hhh/jjj/yyy/
http://www.test.de/verzeichnis/yyyy/xxxx/jjjj/llll/

und nun würde ich gern alle URLs mit mod_rewrite an /cgi-bin/index.pl weiterleiten
und als Variable jeweils das letzte Unterverzeichnis an index.pl übergeben.

Jetzt stellt sich mir die Frage, wie kann man das alles in einer mod_rewrite Regel definieren?
Jemand Idee?
jan
 2004-04-25 18:45
#30721 #30721
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
mod_rewrite unterstützt, genauso wie perl, $ um das ende des strings zu symbolisieren...
such mal nach mod_rewrite, da hatte jemand kürzlich einen thread eröffnet und ich hatte da ein bisschen wild herumspekuliert, wie es klappen könnte. dabei sollte deine frage beantwortet werden...
jan10001
 2004-04-25 22:52
#30722 #30722
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
Du meinst mod_rewrite und logische Fallunterscheidung ?

Quote
uhm, jetzt wird mir schlagartig wieder klar, warum ich immer heilfroh war, wenn ich meine rewrite-conditions und -rules fertig habe, alles funktioniert und ich wieder die finger davon lassen kann...
Nebenbei mir geht es genauso, ist schon lange her seit ich meine rules geschrieben habe und ich war auch froh als es nach zig Versuchen lief. :) Mal sehen ob ich daraus schlau werde.
jan
 2004-04-25 22:54
#30723 #30723
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
japp, genau den meine ich. eigentlich ist es ja immer ganz logisch aber dann kommt das dicke ende :)
Strat
 2004-04-26 02:45
#30724 #30724
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
nebenbei: wenn man mod_perl verwendet, kann man auch einen PerlTransHandler verwenden; der kann noch mehr als mod_perl, z.B.
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
package TransHandler;
use warnings;
use strict;

use Apache::Constants qw(DECLINED);

# this is a replacement for mod_rewrite to get more pretty URIs
#------------------------------------------------------------
sub handler {
   my $r = shift;
   my $standardUri = "/pboard//PBoard.pm";

   my $uri = $r->uri();

   if ( $uri =~ m|^/$| or $uri =~ m|^/overview/?| ) {
       $r->uri($standardUri);
       $r->args("action=overview");
       return DECLINED;
   } # if
   elsif ($uri =~ m|^/logon|) {
       $r->uri($standardUri);
       $r->args("action=logon");
return DECLINED;
   } # elsif
# ...
   return DECLINED;
} # handler
#------------------------------------------------------------
1; # modules have to return a true value
\n\n

<!--EDIT|Strat|1082980351-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
jan
 2004-04-26 11:22
#30725 #30725
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
strat, vielen dank, das ist gut.
ich hab mich mit mod_perl bisher nie direkt beschäftigt, sondern immer nur die performance-vorteile genutzt, mich aber nie mit den apache-interna beschäftigt. wie würde man solch ein modul nun einsetzen? ich sehe nicht, wie dort die rückgabe an den apache vorgenommen wird - d.h. man manipuliert die url und lässt sie dann fröhlich weiter den "normalen" weg gehen - oder ist das gar nicht darin inbegriffen?

ist das mod_perl-buch von ora gut?
jan10001
 2004-04-26 14:21
#30726 #30726
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
@Start
Ich kann ich mod_perl einfach so auf einem Mehruser System installieren? Wie sieht es da mit der Sicherheit und dem Leistungsbedarf aus? Ist zwar mein eigener Server aber ich hoste hier ja auch meine Kunden.
renee
 2004-04-26 14:26
#30727 #30727
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@jan10001: Bei welchem Provider hast Du den Server stehen??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Strat
 2004-04-26 15:51
#30728 #30728
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
@jan: z.B. in den virtual host folgendes schreiben
Code: (dl )
PerlTransHandler TransHandler

der Pfad zu diesem Modul muss aber bekannt sein (z.B. durch ein mod_perl_startup.pl oder so, das du folgendermaszen laedst:
Code: (dl )
PerlRequire E:/apacheweb/8088_develop.perl-community.de_request/html/pboard/mod_perl_startup.pl

)
Ich lerne mod_perl immer mehr zu schaetzen, weil man damit sachen machen kann, die man mit cgi nicht so einfach machen kann, denn man kommt so an die apache-apis dran, und da viele der module damit entwickelt wurden, sind sie i.d.R auch schneller als die "normalen" Perl-Module (z.B. Auslieferung und Hochladen von Dateien, ...)

@jan10001: ja, das kannst du. und solange die user kein mod_perl benuetzen koennen, sondern nur du, ist das auch bei apach1.3/mod_perl sicher.
Zum Leistungsbedarf: mod_perl braucht i.d.R etwas mehr an RAM als CGI (vor allem: es braucht den RAM dauerhaft, waehrend CGI immer nur kurzfristig welchen braucht; allerdings kann man den durch das vorladen der Module minimieren indem man die Module in einer Art mod_perl_startup schon vorlaedt, sodass sie im gemeinsamen Speicher liegen). Wie viel an Ressourcen es kostet, das mod_perl-Modul zu laden, weiss ich nicht. da musst du wohl eine mod_perl-ML fragen

Nebenbei: ab Apache2/mod_perl (letzteres ist allerdings noch beta oder so) hat sich da mit der sicherheit einiges getan, siehe http://perl.apache.org/ -> 2.0\n\n

<!--EDIT|Strat|1082980614-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
jan10001
 2004-04-26 18:26
#30729 #30729
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
@renee
Quote
Bei welchem Provider hast Du den Server stehen??
Ich hab nen Strato Root Server und kann mich bisher nicht darüber beklagen.

@Strat
Quote
solange die user kein mod_perl benuetzen koennen, sondern nur du, ist das auch bei apach1.3/mod_perl sicher.
Sehe ich das richtig das ich den mod_perl Zugriff in der httpd spezial (confixx) nur für bestimmte User aktivieren kann? Oder arbeitet mod_perl nach der Installation global?\n\n

<!--EDIT|jan10001|1082989662-->
<< |< 1 2 >| >> 20 Einträge, 2 Seiten



View all threads created 2004-04-25 16:48.