我的网站上有一个使用.htaccess重定向的页面
页
/folder/page-name.php
的.htaccess
/folder/(.*).php /code/page.php?urlslug=$1[L]
哪种方法非常好。
然后我创建该页面的静态版本,因为它不再需要是动态的,并且通过.htaccess创建了301重定向。
redirect 301 /folder/page-name.php /new-folder/newname.php [L]
工作正常 - 除此之外,URL显示URL slug字符串。
/new-folder/newname.php?urlslug=page-name
解决此问题/剥离的最佳方法是什么?urlslug = page-name?
答案 0 :(得分:1)
您不能以这种方式混合mod_rewrite和mod_alias指令。它们都是URL处理管道的一部分,因此不同的指令将两者应用于相同的请求。在这种情况下,你应该只使用mod_rewrite:
RewriteRule ^folder/page-name.php$ /new-folder/newname.php [L,R=301]
将放在之前映射到/code/page.php
URI的规则。