質問
他の多くの人と同じように、Apacheで非常に簡単なmod_rewritingを実行すると問題が発生します。
.htaccessに次のものがあります:
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^view/([0-9]+)/([0-9]+)$ view.php?advertId=$1&publisherId=$2 [NC,QSA,L]
/ view / 4093/203?qs = valを翻訳することになっています-> /view.php?advertId=4093&publisherId=203?qs=val
今、/ View ...で呼び出すと動作しますが、小文字の/ viewを実行すると、正しいファイルにリダイレクトされますが、advertIdとpublisherIdは、最初の文字のようにPHPスクリプト内で設定されません-uppercase Viewと私は単純に、そのフロントで何が起こっているのか全く見当がつかない(view.phpを実行するだけでその動作をテストおよび監視している)。
誰がこれが起こっているのか知っていますか?
追加したい場合があります。サーバー情報は次のとおりです。
Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny2 with Suhosin-Patch mod_python/3.3.1 Python/2.5.2 mod_perl/2.0.4 Perl/v5.10.0
IE。デフォルトのdebianパッケージ+ php-mssqlを備えた、真新しいdebianインストール。
解決
MultiViews
は、この動作は、リクエストをmod_rewriteに渡す前に、リクエストを同様の既存のファイルにマップしようとしています。無効にしてみてください:
Options -MultiViews
所属していません StackOverflow