使用.htaccess URL重写的语法

时间:2014-04-25 16:09:54

标签: .htaccess url-rewriting

我需要让以下网址重写语法正确并且正在努力。

xxxxx.com/public_html/food/

需要改写为:

xxxxx.com/food/

我尝试过这个并不起作用:

RewriteEngine On   
RewriteCond %{REQUEST_URI}  ^/public_html/food/(.*)$  
RewriteRule ^(.*)$ http://xxxxx.com/food/%1 [R=301,L]

我的客户端正在使用Joomla(我不熟悉),所以我需要使用.htaccess文件,到目前为止我研究过的所有内容。我只是在努力让语法正常工作。

谢谢!

1 个答案:

答案 0 :(得分:0)

试试这个.htaccess

重写

RewriteEngine On   
RewriteRule ^food/?(.*)$ http://xxxxx.com/public_html/food/$1 [QSA,L]

重定向(添加R = 301)

RewriteEngine On   
RewriteRule ^food/?(.*)$ http://xxxxx.com/public_html/food/$1 [R=301,QSA,L]

修改

如果你想重写所有网址(包括/食物)

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/public_html/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /public_html/$1 [QSA,L]

它允许您访问类似的网站,

http://xxxxx.com/food/ 会指向 http://xxxxx.com/public_html/food/

http://xxxxx.com/sample/ 会指向 http://xxxxx.com/public_html/sample/

http://xxxxx.com/anything/cool/?product=123 会指向 http://xxxxx.com/public_html/anything/cool/?product=123/