Как я могу переписать все URL в "/"? - PullRequest
2 голосов
/ 07 марта 2009

Сервер: Apache

Я пытаюсь переписать свои URL следующим образом, и я не могу найти способ заставить его работать.

http://website.com/index.html

Я хочу перенаправить на:

http://website.com/

Итак, я хочу загрузить index.html, но не отображать его в URL. Я также не хочу давать ему другое имя. Я не ищу / index.html , чтобы стать / index

Кроме того, я пытаюсь получить какие-либо данные GET, такие как:

http://website.com/index.html?id=0&name="fred"

Переписать на:

http://website.com/?id=0&name="fred".

Если у вас есть решение, которое не использует файлы .htaccess, это тоже хорошо.

Ответы [ 2 ]

6 голосов
/ 07 марта 2009

Я считаю, что это должно работать:

RewriteEngine on
RewriteRule ^index\.html(.*)$ /$1 [R=permanent,L]

Это перенаправит любые запросы, которые начинаются с /index.html, просто на "/" и сохранит все аргументы, следующие после index.html

1 голос
/ 07 марта 2009

Для файла .htaccess:

RewriteEngine on
RewriteCond %{THE_REQUEST} ^GET\ /index\.html
RewriteRule ^index\.html$ / [L,R=301]
...