web-dev-qa-db-ja.com

条件が一致しない場合、ルールを書き換えます

URLが[〜#〜] not [〜#〜]パス「フォーラム」に一致する場合、どのようにルールを実行できますか?

例えば:

RewriteCond IF URL IS NOT forums
RewriteRule !\.(js|gif|css|jpg|png)$ %{DOCUMENT_ROOT}/index.php [L]
44
jcoahd

Apacheの RewriteCond および RewriteRule ディレクティブは、感嘆符をサポートして、一致しないパターンを指定します。

パターン文字列の前に「!」を付けることができます一致しないパターンを指定する文字(感嘆符)。

これは動作するはずです:

RewriteCond %{REQUEST_URI} !^/forums.*
RewriteRule !\.(js|gif|css|jpg|png)$ /index.php [L]

->forumsで始まらず、リストされているサフィックスで終わらないすべてのリクエストをindex.phpにリダイレクトします

69
marapet