以外のすべてを書き換える:それは、このような「管理者」として、私が作成した新しいディレクトリを書き換えないように私はそれを変更することができますどのようにモッズ書き換え - 私はこのコード行持っ
RewriteRule ^(.*)/$ allcities.php?state=$1 [QSA,L]
Howverを。現在も同様に書き直されています。
以外のすべてを書き換える:それは、このような「管理者」として、私が作成した新しいディレクトリを書き換えないように私はそれを変更することができますどのようにモッズ書き換え - 私はこのコード行持っ
RewriteRule ^(.*)/$ allcities.php?state=$1 [QSA,L]
Howverを。現在も同様に書き直されています。
あなたはそのためのRewriteCond
使用することができます。
RewriteCond %{REQUEST_URI} !^/admin
RewriteRule ^(.*)/$ allcities.php?state=$1 [QSA,L]
はRewriteCond
上の正規表現の前に感嘆符に注意してください。正規表現はその意味を元に戻します。この場合、要求URIが/admin
で始まらない場合、条件は真です。
詳細については、mod_rewrite documentationを参照してください。
書き換えルールは、受信した順に処理されます。そのルールが処理される前に、既存のディレクトリにルーティングするハンドラを用意する必要があります。たとえば:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ allcities.php?state=$1 [QSA,L]
ありがとうございました。しかし、adminで始まるファイルがあるとどうなりますか?あなたは/ admin /に問題なく変更できますか? – Brett
はい、必要な正規表現を使用することができます。 '^/admin /?$ $ 'はパスとオプションの末尾のスラッシュをマッチさせます。 –
@HolgerJustあなたは '^/admin(/ | $)'を意味すると思います - あなたが書いたルールは、/ adminまたは/ admin /でのみ一致しません。 – fluffy