Alt 01.11.2006, 19:59:12   #1
birwac66
Erfahrener Benutzer

ID: 178958
Lose senden
im Urlaub

Reg: 20.04.2006
Beiträge: 558
Standard 2 Probleme mit mod_rewrite

Hallo ich habe zwei probleme mit mod_rewrite
Erst mal meine htacces datei:
Zitat:
RewriteEngine on
RewriteRule (.*).html$ index.php?site=$1
ErrorDocument 401 /error.php
ErrorDocument 403 /error.php
ErrorDocument 404 /error.php
ErrorDocument 500 /error.php
Das erste Problem:
ICh bekomme einen Serverfehler
Zitat:
Serverfehler!

Die Anfrage kann nicht beantwortet werden, da im Server ein interner Fehler aufgetreten ist. Der Server ist entweder überlastet oder ein Fehler in einem CGI-Skript ist aufgetreten.

Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 500
localhost
11/01/06 20:54:46
Apache/2.2.2 (Win32) DAV/2 mod_ssl/2.2.2 OpenSSL/0.9.8b mod_autoindex_color PHP/5.1.4
Welche Lösungen wären hier möglich?

Zweites Problem:
Was muss ich verändern, dass ich ne zweite funktion hinzufügen kann. (z.B. ?site=start&test=2test&test123=2

Wie wäre hier die Problemlösung?
birwac66 ist offline   Mit Zitat antworten
Alt 01.11.2006, 20:30:01   #2
flaschenkind
Erfahrener Benutzer

ID: 118459
Lose senden

Reg: 20.04.2006
Beiträge: 4.530
Standard

1. Wahrscheinlich ist auf deinem Webspace mod_rewrite nicht aktiviert.
2. RewriteRule (.*)-(.*)-(.*).html$ index.php?site=$1&test=$2&test123=$3
flaschenkind ist offline   Mit Zitat antworten
Alt 01.11.2006, 20:38:13   #3
birwac66
Erfahrener Benutzer

ID: 178958
Lose senden
im Urlaub

Reg: 20.04.2006
Beiträge: 558
Standard

Zitat:
Zitat von flaschenkind Beitrag anzeigen
1. Wahrscheinlich ist auf deinem Webspace mod_rewrite nicht aktiviert.
2. RewriteRule (.*)-(.*)-(.*).html$ index.php?site=$1&test=$2&test123=$3
ok frage 2 geklärt

zu frage 1
schau mal kurz in der php.ini

edit3
Kann ich des auch so machen, dass wenn nur die seite test.html übergeben wird auch ?site=test geöffnet wird
und wenn ich test-12-12.html mache, dass dann die seite ?site=test&1=12&2=12 angezeigt wird?


edit2
habs gefunden war ein zeichen zu viel

edit find des irgendwie ned wo ich des aktivieren kann?
in der php.ini steht davon nix
und in der httpd.conf is auch ned des drin was ich brache um dies zu aktivieren (nutze xampp)

Geändert von birwac66 (01.11.2006 um 20:58:22 Uhr) Grund: edit
birwac66 ist offline Threadstarter   Mit Zitat antworten
Alt 01.11.2006, 21:12:48   #4
flaschenkind
Erfahrener Benutzer

ID: 118459
Lose senden

Reg: 20.04.2006
Beiträge: 4.530
Standard

Erstell mal ne phpinfo()
flaschenkind ist offline   Mit Zitat antworten
Alt 01.11.2006, 21:30:26   #5
ice-breaker
return void
Benutzerbild von ice-breaker

ID: 93995
Lose senden

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.271
Standard

doch in der http.conf ist ein modul namens mod_rewrite.so oder so ähnlich, da musst dur vorne das ";" entfernen und den xampp neu starten
"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici

www.internet-dsl-flatrate.de
ice-breaker ist offline   Mit Zitat antworten
Alt 01.11.2006, 21:35:43   #6
birwac66
Erfahrener Benutzer

ID: 178958
Lose senden
im Urlaub

Reg: 20.04.2006
Beiträge: 558
Standard

Zitat:
Zitat von ice-breaker Beitrag anzeigen
doch in der http.conf ist ein modul namens mod_rewrite.so oder so ähnlich, da musst dur vorne das ";" entfernen und den xampp neu starten
des geht ja jetzt nur jetzt is meine frage
Zitat:
Kann ich des auch so machen, dass wenn nur die seite test.html übergeben wird auch ?site=test geöffnet wird
und wenn ich test-12-12.html mache, dass dann die seite ?site=test&1=12&2=12 angezeigt wird?
Oder das ich des noh bischen ändere also beliebig erweitern kann aber auch wenn eins ned verfügbar ist dieses ignorieren.
Beispiel:
test-test-test-test-test.html --> ?site?test&1=1&2=1&3=1&4=1
test-test --> ?site=test&1=test
test-test-test-test --> ?site?test&1=1&2=1&3=1

hoffe das ihr mir hier auch helfen könnt
birwac66 ist offline Threadstarter   Mit Zitat antworten
Alt 01.11.2006, 21:40:43   #7
tleilax
be forever curious
Benutzerbild von tleilax

ID: 27936
Lose senden

Reg: 20.04.2006
Beiträge: 2.428
Standard

Müssen die ganzen Parameter denn wirklich in der URL auftauchen? [QSA] als Flag wirkt IMHO oft viel schicker...
.lange tage und angenehme nächte, tlx
:.whatthemovie.com (Screenshots raten) | PHP ExportForce-Klasse
tleilax ist offline   Mit Zitat antworten
Alt 01.11.2006, 21:46:01   #8
birwac66
Erfahrener Benutzer

ID: 178958
Lose senden
im Urlaub

Reg: 20.04.2006
Beiträge: 558
Standard

Zitat:
Zitat von tleilax Beitrag anzeigen
Müssen die ganzen Parameter denn wirklich in der URL auftauchen? [QSA] als Flag wirkt IMHO oft viel schicker...
ja sollte so sein geht das?
birwac66 ist offline Threadstarter   Mit Zitat antworten
Alt 03.11.2006, 21:07:37   #9
birwac66
Erfahrener Benutzer

ID: 178958
Lose senden
im Urlaub

Reg: 20.04.2006
Beiträge: 558
Standard

neues problem:
Ich habe zwei mal ne umleitung jedoch stimmt da was ned
Code:
RewriteEngine on
Zitat:
RewriteRule ^(.*).html$ index.php?site=$1
RewriteRule ^(.*)-(.*).html$ index.php?site=$1&2=$2
was ist hier das problem ich bekomme immer einen fehler (404 von der index.php)
Aufruf der seite so:
anzeigen-1.html jedoch wird das irgendwie ned richtig übertragen also ?site=anzeigen&2=1
birwac66 ist offline Threadstarter   Mit Zitat antworten
Alt 04.11.2006, 07:48:22   #10
strolch00
redraft.de

ID: 155297
Lose senden

strolch00 eine Nachricht über ICQ schicken
Reg: 21.04.2006
Beiträge: 1.684
Standard

Code:
1:
2:
3:
RewriteEngine On RewriteRule ^(.*)\.html$ index.php?site=$1 [L] RewriteRule ^(.*)-(.*)\.html$ index.php?site=$1&2=$2 [L]
1. richtige Pkte immer Escpaen\
2. eine Endende Regel immer mit [L] abschließen
3. sicher das du das wirklich so willst???

meine würde so aussehen:
Code:
1:
2:
3:
RewriteEngine On RewriteRule ^([a-z]+)\.html$ index.php?site=$1 [NC,L] RewriteRule ^([a-z]+)-([0-9]+)\.html$ index.php?site=$1&2=$2 [NC,L]
im ersten Teil sind die Dateienmame also immer nur buchstaben bei mir evtl kannst ja noch ein 0-9 reinschreiben für zahlen und ein _ für dateienamen ala media_data oder so, aber das mußt du wissen.

*edit Das Flag NC sagt Groß/kleinschreibung ignorieren.

Aber in den meisten Fällen ist es Performanter den QSA zu senden und den mit php zu zerpflücken in einer switch() zB.

Geändert von strolch00 (04.11.2006 um 07:54:26 Uhr)
strolch00 ist offline   Mit Zitat antworten
Antwort

Anzeige


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[PHP/Mod_rewrite]Mod_rewrite und Session-IDs? BartTheDevil89 Programmierung 6 19.02.2007 15:20:34
[mod_rewrite] Probleme traffic Programmierung 24 05.12.2006 15:04:50
mod_rewrite Zocker4Life Programmierung 1 02.11.2006 11:07:00
[PHP, mod_rewrite] Effektiver Frontcontroller mit mod_rewrite theHacker Programmierung 9 04.08.2006 23:19:07
mod_rewrite Querulant Programmierung 1 04.08.2006 12:00:50


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:57:29 Uhr.