Wie kann ich alle URLs in "/" umschreiben?
-
05-07-2019 - |
Frage
Server: Apache
Ich möchte meine URLs auf folgende Weise neu schreiben, und ich kann keinen Weg finden, um sie zum Laufen zu bringen.
http://website.com/index.html
Ich möchte, dass es sich umleiten soll:
http://website.com/
Im Grunde möchte ich index.html laden, aber nicht in der URL anzeigen. Ich möchte ihm auch keinen anderen Namen geben. Ich suche nicht nach /Idex.html werden /Index
Darüber hinaus versuche ich, Daten zu erhalten, wie z. B.:
http://website.com/index.html?id=0&name="fred"
Um zu schreiben zu:
http://website.com/?id=0&name="fred".
Wenn Sie eine Lösung haben, die keine .htaccess -Dateien verwendet, ist dies auch in Ordnung.
Lösung
Ich glaube, das sollte funktionieren:
RewriteEngine on
RewriteRule ^index\.html(.*)$ /$1 [R=permanent,L]
Dies wird alle Anfragen umleiten, die mit beginnen /index.html
einfach "/
"Und wird alle nachstehenden Argumente bewahren index.html
Andere Tipps
Für eine .htaccess -Datei:
RewriteEngine on
RewriteCond %{THE_REQUEST} ^GET\ /index\.html
RewriteRule ^index\.html$ / [L,R=301]
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow