2009-03-06 11 views
2

サーバー:ApacheどのようにすべてのURLを "/"に書き換えることができますか?

私のURLを次のように書き換えようとしていますが、それを動作させる方法を見つけることができません。私はそれがにリダイレクトしたい

http://website.com/index.html 

http://website.com/ 

だから基本的に私はindex.htmlををロードしたいのですが、URLに表示しません。私はまたそれに別の名前をつけたくありません。

:に書き換えるために

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

:私は、私のような任意のGETデータを持ってしようとしている、さらに

/指標になることを/index.htmlがを探していませんよ

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

.htaccessファイルを使用していないソリューションがあれば、それも問題ありません。

答えて

6

私は、これは動作するはずと信じて:

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

これは単に「/」に/index.htmlで始まるすべての要求をリダイレクトし、.htaccessファイルについてindex.html

+0

開始スラッシュは間違いなくそこに存在するはずです(SHOULD NOT there)。 – Piskvor

+0

ありがとうございます。私は答えを更新した – OverloadUT

1

後に来る任意の引数を保持します。

RewriteEngine on 
RewriteCond %{THE_REQUEST} ^GET\ /index\.html 
RewriteRule ^index\.html$/[L,R=301] 
関連する問題