31640
08.12.2007, aktualisiert am 09.12.2007
5187
6
0
Url manipulation
hallo!
also: ich würde bei meiner webseite eine ähnliche navigation haben wie bei der wikipedia d.h. der user gibt www.domain.de/foo/bar edin und bekommt dan die seite ww.doimain.de/index.php?cat=foo&id=bar
wenn ich mich nicht tausche war das mal bei administrator.de auch so admin.de/foo leitete zu einer suche nach foo weiter
kann mir jemad ein rat geben? danke im voraus....
also: ich würde bei meiner webseite eine ähnliche navigation haben wie bei der wikipedia d.h. der user gibt www.domain.de/foo/bar edin und bekommt dan die seite ww.doimain.de/index.php?cat=foo&id=bar
wenn ich mich nicht tausche war das mal bei administrator.de auch so admin.de/foo leitete zu einer suche nach foo weiter
kann mir jemad ein rat geben? danke im voraus....
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 75550
Url: https://administrator.de/contentid/75550
Ausgedruckt am: 22.11.2024 um 05:11 Uhr
6 Kommentare
Neuester Kommentar
Hi Valerij,
diese Funktion ist abhängig vom Webserver. Sprich es hat nichts mit der Programmiersprache der Website zu tun, sondern ob der Apache-Webserver das rewrite Modul aktiviert hat. Mehr dazu findest du hier.
Grüße
Dani
diese Funktion ist abhängig vom Webserver. Sprich es hat nichts mit der Programmiersprache der Website zu tun, sondern ob der Apache-Webserver das rewrite Modul aktiviert hat. Mehr dazu findest du hier.
Grüße
Dani
Hier gibts auch noch gute Infos:
http://www.modrewrite.de/
http://www.modrewrite.de/
@31640
Hi,
in der Konfiguratiosdatei(httpd.conf) des Apache gibt es einen
auskommentierten Eintrag "ErrorDocument 404 /missing.html".
Entferne das Kommentarzeichen "#" und ändere die Zeile in
ErrorDocument 404 /missing.php um. Dann erstellst du diese
Datei im Root-Verzeichnis des Webservers.
Auf der Zielseite mußt du dann die Argumente aus der URL ausfiltern.
Gruß
Günni
P.S.: Funktioniert jetzt mal bei mir zuhause. Inwie weit bestimmte Variablen vom
Webserver übertragen und ausgewertet werden können, hängt immer von der
Konfiguration ab. Auch das Ändern der httpd.conf muß natürlich erlaubt sein(Provider)
Hi,
in der Konfiguratiosdatei(httpd.conf) des Apache gibt es einen
auskommentierten Eintrag "ErrorDocument 404 /missing.html".
Entferne das Kommentarzeichen "#" und ändere die Zeile in
ErrorDocument 404 /missing.php um. Dann erstellst du diese
Datei im Root-Verzeichnis des Webservers.
<?
/*
Zuerst wird die Serveradresse zusammengesetzt.
*/
$host="http://";
$host.=$_SERVER["HTTP_HOST"];
/*
Dann werden die Argumente, dein Beispiel /foo/bar, in einem
Array abgelegt
*/
$uri_array=split("/",$_SERVER["REQUEST_URI"]);
/*
Da du ja eine Suchfunktion angesprochen hast, heißt die Variable,
die an die Serveradresse angehangen wird jetzt einfach mal $search,
wo erstmal die Startseite abgelegt wird
*/
$search="/index.php?";
/*
Anschließend werden alle Elemente bis auf das letzte an die Variable
$search angehangen.
*/
for($i=1;$i<count($uri_array)-1;$i++){
$search.="arg".$i."=";
$search.=$uri_array[$i]."&";
}
/*
Das letzte Element wird extra angehangen, weil in der for-Schleife
sonst am Ende ein "&" zuviel wäre, z.B. /index.php?arg1=foo&arg2=bar&
*/
$search.="arg".$i."=";
$search.=$uri_array[$i];
/*
Zum Schluß wird auf die Startseite(oder auf eine andere) umgeleitet, mit dem Querystring $search.
In der Adresszeile steht nun z.B. nach Aufruf "http://server/otto/schily/angela/merkel
http://server/index.php?arg1=otto&arg2=schily&arg3=angela&arg4=merkel
*/
header("location:$host$search");
?>
Auf der Zielseite mußt du dann die Argumente aus der URL ausfiltern.
<?
$query=substr($_SERVER['REQUEST_URI'],strpos($_SERVER['REQUEST_URI'],"?")+1);
$query=split("&",$query);
while(list($key,$value)=each($query)){
$search=split("=",$value);
echo $search[1]."<br>";
}
?>
Gruß
Günni
P.S.: Funktioniert jetzt mal bei mir zuhause. Inwie weit bestimmte Variablen vom
Webserver übertragen und ausgewertet werden können, hängt immer von der
Konfiguration ab. Auch das Ändern der httpd.conf muß natürlich erlaubt sein(Provider)
Danke Günni, diese Methode kannte ich noch ganricht auf diese Idee muss man erstmal kommen.
Aber ich glaube so wird das nicht beim WIKI gemacht wenn es nicht mod_rewrite ist. Denn es läuft bei Ihm lokal, aber hat nichts an der konfiguration geändert oder er hat nichts erwähnt. Oder vielleciht wird es ja per ini_set gemacht was aber auch wieder zugriffsrechte brauch?
Aber ich glaube so wird das nicht beim WIKI gemacht wenn es nicht mod_rewrite ist. Denn es läuft bei Ihm lokal, aber hat nichts an der konfiguration geändert oder er hat nichts erwähnt. Oder vielleciht wird es ja per ini_set gemacht was aber auch wieder zugriffsrechte brauch?