Mod rewrite 重写cond don';我不懂如何申请!
我有这个Mod rewrite 重写cond don';我不懂如何申请!,mod-rewrite,Mod Rewrite,我有这个 RewriteRule ^articles/([0-9]+)-(.*)\.html$ article.php?id=$1 [L] RewriteRule .* index.php 由于.htaccess中的[L]问题,我仍然不理解如何应用RewriteCond。救命啊!提前感谢:)关于serverfault有一个很好的参考问题,它解释了规则和条件是如何相互作用的: 当前关于Meta的讨论建议链接。关于serverfault有一个很好的参考问题,它解释了规则和条件是如何相互作用的:
RewriteRule ^articles/([0-9]+)-(.*)\.html$ article.php?id=$1 [L]
RewriteRule .* index.php
由于.htaccess中的[L]问题,我仍然不理解如何应用RewriteCond。救命啊!提前感谢:)关于serverfault有一个很好的参考问题,它解释了规则和条件是如何相互作用的:
当前关于Meta的讨论建议链接。关于serverfault有一个很好的参考问题,它解释了规则和条件是如何相互作用的:
根据当前关于Meta的讨论的建议进行链接。我猜您正在寻找这样的链接:
RewriteRule ^articles/([0-9]+)-(.*)\.html$ article.php?id=$1 [L]
RewriteCond $0 !=article.php
RewriteRule .* index.php
另一个解决方案是使用第二个重写规则的模式排除article.php
:
RewriteRule !^article\.php$ index.php
但请注意,这将重写任何其他请求(包括其他现有文件)。要克服这一点,您可以对第二条规则使用不同的条件:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php
我猜你在找这样的东西:
RewriteRule ^articles/([0-9]+)-(.*)\.html$ article.php?id=$1 [L]
RewriteCond $0 !=article.php
RewriteRule .* index.php
另一个解决方案是使用第二个重写规则的模式排除article.php
:
RewriteRule !^article\.php$ index.php
但请注意,这将重写任何其他请求(包括其他现有文件)。要克服这一点,您可以对第二条规则使用不同的条件:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php