我正在使用PHP的RouteMap并希望清理网址。
网址的格式为:
http://localhost/subfolder/index.php?controller/method/arg1
我如何将其转换为:
http://localhost/subfolder/controller/method/arg1
答案 0 :(得分:0)
尚未对其进行测试,但我认为您需要以下内容:
RewriteRule ^/subfolder/controller/(method/.*)$ /subfolder/index.php?controller/$1
答案 1 :(得分:0)
您可以在httpd.conf文件中尝试:
#start your engine
RewriteEngine on
#add www. for any url, not what you asked for, but kinda helpful SEO-wise
RewriteCond %{HTTP_HOST} ^mypage\.com
RewriteRule ^(.*)$ http://www.mypage.com$1
#rewrite stuff
RewriteRule ^/subfolder/(controller/method/arg1)/?$ /index.php?$1
那应该有用。我会改变最后一行,然后:
RewriteRule ^/subfolder/(controller/method/arg1)/?$ /index.php?p=$1
现在,在重新启动apache之前,请尝试测试配置文件是否正常。
user$ apachectl configtest
就是这样。
希望它有所帮助。
干杯
答案 2 :(得分:0)
RewriteRule ^products/([0-9][0-9])/$ /productinfo.php?prodID=$1 [R]
RewriteRule ^products/([0-9][0-9])$ /products/$1/
同一个.htaccess文件中的多个重定向可以按顺序应用,这就是它的作用