Apache RewriteRule替换url

时间:2013-01-03 19:23:02

标签: apache .htaccess mod-rewrite

我正在尝试修改.htaccess文件以获取URL翻译,如下所示:

www.example.com/site/blahblahblah/files/a.jpg - > www.example.com/site/files/a.jpg

类似的东西:

RewriteBase /site/
RewriteRule ^(.*)/files/(.*)$ files/$1 [L]

但它不起作用。

谢谢

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}  !site/files/?.*
RewriteCond %{REQUEST_URI}  (files)/?(.*)
RewriteRule .* http://www.example.com/site/%1/%2 [L,R=301,QSA]

将重写此内容:

http://www.example.com/site/blahblahblah/files/a.jpg

对此:

http://www.example.com/site/files/a.jpg