相对网址和.htaccess

时间:2014-04-20 01:01:50

标签: .htaccess mod-rewrite

我的.htaccess文件如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /mainsite/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?page=$1 [QSA,L]
</IfModule>

页面内容中的所有图片都使用相对路径,例如uploads / dir1 / image.png。

图像的URL在其路径中具有其他伪目录,如下例所示。 http://mydomain.com/mainsite/page/Contact-us/uploads/dir1/image.png 它应该是: http://mydomain.com/mainsite/uploads/dir1/image.png

我不想创建绝对网址,或者添加<base href="/">原因是在将网站从本地服务器转移到远程服务器时,所有网址都将丢失。

有没有办法用mod_rewrite?

1 个答案:

答案 0 :(得分:0)

您可以使用此重写规则来修复图片路径:

RewriteEngine On
RewriteBase /mainsite/

RewriteRule /(uploads/.+)$ $1 [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1 [QSA,L]