現在、1つのURL書き換えルールに問題があります。 [私はApache 2.4.23で動作しています]URL隠しルールで書き直し
特定のページのリダイレクトを試みています。ここに私のルールがあります:
RewriteRule ^clubs[^/]?$ club.php?job=display [L,NC]<br />
RewriteRule ^club/([^/]*)$ club.php?job=detail&name=$1 [L]<br />
RewriteCond %{REQUEST_URI} !club\.php [NC]<br />
RewriteRule ^club/([^/]+)/?(.+)?/? club.php?job=detail&name=$1&action=$2 [NC,L]
"クラブ"のルールはうまくいきます。しかし、クラブのためのものは働いていない。 私がURL http://mysite/clubに行った場合、それはすでにhttp://mysite/club.phpに書き換えられていることがわかりますか?
もし私がURL http://mysite/club/clubNameに行くと、それはすでにhttp://mysite/club.php/clubNameに書き換えられているのがわかりますか?
これはすべて、ファイルclub.phpが存在するためです。私が 'club'を 'anythingElseButNonExistingFile'にリダイレクトしてしまえば、それはうまくいったでしょう。 .htaccessファイル内のすべての行を削除しても、これが発生します。だから私は別の.htaccessファイルにアクセスできない他のルールがあると思う。私が行くしようだから今、
RewriteRule ^club.php/(.+) club.php?job=detail&name=$1 [L]<br />
RewriteCond %{REQUEST_URI} !club\.php [NC]<br />
RewriteRule ^club/([^/]+)/?(.+)?/? club.php?job=detail&name=$1&action=$2 [NC,L]<br />
:
は、だから私はに「クラブ」の私のルールを変更し
http://mysite/club/clubName、それは動作しますが、それは良くない
http://mysite/club.php/clubName?job=detail&name=clubName
にリダイレクトしますが、作業中です...
http://mySite/club/clubName/addPhotoにアクセスしようとすると、urlが正しく書き換えられません。私が取得: http://club.php/clubName/addPhoto?job=detail&name=clubName%2FaddPhoto 私はこれを取り除く方法がわからない...
私は、これはあまりにも混乱しないし、誰かが解決策を持っていることを願って...事前に感謝を!
[OK]を、これは完璧に動作し、私の問題を解決しました!参考になったブックマークに参考にしていただき、ありがとうございました;-) –