2012-02-27 12 views
0

私は既に同じような質問を1ヶ月前に受けており、私の状況の解決策を受け取っています。 しかし、今私はこの問題の重要な注意点があります。不正なパスのアドレスと書き換えルール

私はローカルWebサーバー上でサイトを実行しています。サイトのパスはhttp://ikotです。 「ikot/news」のようなアドレスを入力するとOK- が表示されますが、ikot/mediaに入ると「http://ikot/media/?level [0] = media & depth = 1」に変換されます。

htaccessファイルで

私の書き換えルール:

RewriteRule  ^([0-9a-zA-Z_-]+)[/]?$ /index.php?level[0]=$1&depth=1 [L,QSA]      
RewriteRule  ^([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)[/]?$ /index.php?level[0]=$1&level[1]=$2&depth=2 [L,QSA] 
RewriteRule  ^([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)[/]?$     /index.php?level[0]=$1&level[1]=$2&level[2]=$3&depth=3 [L,QSA] 
RewriteRule  ^([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)[/]?$  /index.php?level[0]=$1&level[1]=$2&level[2]=$3&level[3]=$4&depth=4 [L,QSA] 

(ikot /メディア/ [ごみ]パスにikot /メディア)この変換の理由は、私は私のサイトのルートフォルダにある「メディア」フォルダを持っているということです。そして、おそらく、このフォルダやそのようなものを入力したいと思うような書き直しルールがあると考えているかもしれません(しかし、ikot/mediaは、メディアフォルダの内容ではなく、サイトのメディアページにつながります)。

この状況で私に助けてください。 ありがとう

答えて

0

DirectorySlashを無効にしてみてください。 mod_dirがあなたのurlを変更し、書き換えがうまくいかないように見えます(最初のmodリライトでindex.phpに変更されますか?...そして次のmodディレクトリは/ media /?にリダイレクトされます) 。

.htaccessに「DirectorySlash Off」を追加すると、私の仕事ができます。

助けが必要な場合は、そのページの「セキュリティ警告」をよくお読みください。http://httpd.apache.org/docs/2.0/mod/mod_dir.html

+0

ありがとう!) *セキュリティ通知を読むつもりです – Dmitry