0

サイトの public_html/ にある htaccess に次のものがあります。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(mailinglist)/.*$ - [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

これが機能するかどうかはわかりません。http://www.mysite.com/mailinglistにアクセスすると問題なく、上記の最後のルールを実行しようとしません。http://www.mysite.com/mailinglist/loginに行くと、それも機能します。http://www.mysite.com/mailinglist/campaignsも機能します。それが機能しないときは、http: //www.mysite.com/mailinglist/w/1 にアクセスすると、最後の RewriteRule が使用されます。

RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

この htaccess が /mailinglist ディレクトリとその中のすべてを完全に無視するようにするにはどうすればよいですか? そのディレクトリには、そのディレクトリで使用する別の htaccess があります。

4

1 に答える 1

0

メーリングリストのルールを次のように変更してみてください。

RewriteRule ^/?mailinglist - [L,NC]

または、index.php ルールの例外として追加することもできます。

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/mailinglist
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
于 2012-09-21T21:55:06.813 に答える