在.htaccess
中,我正在尝试将没有尾部斜杠的网址重定向到扩展名为.php
的网址。
似乎问题是页面名称是相同的,因为当起始URL和重定向的URL之间的页面名称不同时,我正在使用的301重定向样式起作用。
使用下面的301重定向,我收到重定向循环错误。
RewriteRule ^example http://www.example.com/example.php [R=301,L]
如何使301重定向工作?我尝试首先重定向到另一个页面,然后再次重定向到最终的URL,没有运气。
.htaccess
的顶部是
AcceptPathInfo off
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
答案 0 :(得分:1)
您的正则表达式^示例匹配double_optin
和@mc.lists.subscribe(@list_id, email, nil, 'html', false)
。
因为您使用的是301重定向,所以来自浏览器的example
请求。获取一个响应,告知浏览器访问example.php
。但是,example
的第二个请求也与RewriteRule匹配,并生成另一个301重定向。
更新正则表达式仅适用于example.php
请求。
example.php
尾随$告诉正则表达式引擎匹配在该点结束,并且请求字符串中不能有其他字符。