2016-07-24 5 views
0

Ich bin neu beim URL-Rewriting.Wie umschreiben Regeln für nur eine Seite mit GET-Parameter mit. Htaccess?

Was ich bisher getan haben:

mehrere Online-Ressourcen Ich bin meine URL neu zu schreiben loclahost/mysite/attach.php?q=1 zu localhost/mysite/attach/1 durch die folgende Regel erfolgreich in der Lage: My :

Options +FollowSymLinks -MultiViews 

RewriteEngine On 
RewriteBase /mysite/ 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^attach/([^/]+)$ attach.php?q=$1 [NC,L] 

Problem Problem ist, dass mit dieser Regel alle meine URLs überschrieben werden. Wenn ich auf einen Link im Navigationsmenü klicke, fügt er attach/ vor der Seite an. Darüber hinaus werden auch CSS- und Bild-Links überschrieben localhost/mysite/attach/style/css/style.css, während es localhost/mysite/style/css/style.css sein soll, daher stylt der Browser die Seite auch nicht.

Antwort

0

Überprüfen Sie Ihre letzten 3 Zeilen zu dieser Regel, und Sie werden fertig sein.

RewriteCond %{QUERY_STRING} (^|&)q=1($|&) 
RewriteRule ^mysite/attach\.php$ /mysite/attach/1?&%{QUERY_STRING} 
+0

Kein Glück. Es wurde noch schlimmer. Es gibt mir 404 Fehler. Objekt nicht gefunden. – TeamIncredibles

Verwandte Themen