2010-12-13 4 views
1

私は非常に小さなサイト、5ページをApacheのPHPで作成しています。私は拡張子.phpを非表示にしたかった5つのphpのトップディレクトリ内のファイル、index.phpを、random.phpなどを作成しましたので、私は私の.htaccessに次のように置く:簡単なRewriteRuleの問題に関するヘルプ

RewriteRule ^random/?$ random.php

私がwww.example.com/randomにアクセスすると、私は必要なページを手に入れることができますが、www.example.com/random/(最後にスラッシュ)を訪問すると、CSSとリンクはすべて1つのディレクトリ、つまりサーバー私が/random/index.phpにいると思っています。/random.phpではありません。

私はRewriteRuleの全員であり、ありがとうございます!

答えて

2

実際にHTTPリダイレクトを行う末尾のスラッシュについては、別のルールを設定する必要があります。例:

RewriteRule ^random/$ /random [R=301,L] 
RewriteRule ^random$ random.php 

相対URLはブラウザによって処理されるため、その末尾のスラッシュでブラウザが混乱します。

ほとんどのHTTPサーバーは、実際にはこのようなディレクトリ名のリダイレクトの逆を行います。つまり、http://example.com/foo/barに移動し、barをディレクトリとすると、/foo/bar/にリダイレクトされます。

+0

ありがとうございます!私はそれをします。 –