2017-08-21 9 views
2

私は競合RewriteRule .htaccessを持っています。.htaccess RewriteRuleの競合を修正するには?

RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . /index.php [L] 
RewriteRule ^unsubscribe.php$/template/site.org/newsletter/unsubscribe.php 
RewriteRule ^(unsubscribe)/?$ /$1.php [L,NC] 

RewriteRule ^unsubscribe.php$/template/site.org/newsletter/unsubscribe.php 
RewriteRule ^(unsubscribe)/?$ /$1.php [L,NC] 

とこの

RewriteRule . /index.php [L] 

競合私はそれを修正するために助けてください。

答えて

2

あなたのunsubscribeルールにはパターンとターゲットの間にスペースが必要ですが、もっと重要なことはキャッチオールindex.phpルールの前にこれらのルールを配置する必要があることです。最後の2つのルールを1つにまとめることもできます。

RewriteEngine on 
RewriteBase/

RewriteRule ^unsubscribe(?:\.php)?$ /template/site.org/newsletter/unsubscribe.php [L,NC] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . /index.php [L] 
+1

ありがとうございます@anubhava。それは完璧に働いています。 – Ayuktia