2
これは私の.htaccessファイルです:RewriteCondでローカルパスを取得するには?
RewriteEngine On
RewriteBase /projs/CodeIgniterTest
RewriteCond %{REQUEST_URI} !^/projs/CodeIgniterTest/index.php
RewriteRule ^(.*)$ index.php/$0
正しくRewriteRule
作品が、私はローカルパスで動作するようにRewriteCond
ラインを取得することはできません。私はこれが仕事をしたい:
RewriteCond %{REQUEST_URI} !^index.php
しかし、悲しいかな%{REQUEST_URI}
RewriteBase
ラインについてはあまり気にして完全なパスを使用していません。私の望む結果を達成するための方法はありますか?私はプロジェクトのパスを変更するたびに.htaccessファイルを編集する必要はありません。
'のRewriteCond $!0^index.php'は魅力のように働きました!しかし '$ 0'部分について説明できますか?私はRewriteCondのドキュメントのようなものについては言及していません。 – Hubro
Apacheはrewriteecondルールを実行する前に、rewriteルールのregexとマッチします。 RewriteCondはTestStringで$ 0..9を使用できます。したがって、あなたのケースでは$ 0はあなたのrewritebaseに相対的なパスを含んでいます。 (http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritecondの最初の箇条書きにあります) – Gerben
非常によく説明されました、ありがとう! – Hubro