我在.htaccess中有这个,删除所有文件末尾的.php:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
现在我需要一个新规则来重定向:
# FROM: www.example.com/ca/blog/first-post
# TO: www.example.com/ca/entrada.php?first post
RewriteRule ^ca/blog/(.*)$ /ca/entrada.php?url=$1[L]
它不起作用。
我尝试添加[LR = 301]以了解它的去向,令我惊讶的是,它会:
www.example.com/ca/entrada.php?url=first-post.php/first-post
然后,我检查它是否可能与另一个RewriteRule发生冲突。我发现如果我删除第一个RewriteRule(摆脱.php的那个),第二个(博客一个)工作正常。
我只知道两个RewritRule之间存在冲突,但问题究竟在哪里以及如何解决?
更具体地说,我会理解第一条规则最后可以添加.php:" www.example.com/ca/entrada.php?url = first-post.php"但是" / first-post"最后来自?