0

我正在为我的网页制作 .htaccess,代码如下:

Options -Indexes

RewriteEngine On
RewriteRule ^([A-Za-z]+)/([0-9]+)/$ files.php?row=$1&column=$2 

RewriteRule ^([A-Za-z]+)/?$ $1/1/ 

RewriteCond %{HTTP_REFERER} !^http://(www\.)?mywebpage\.at [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} ^http://.*$
RewriteRule \.(jpe?g|gif|bmp|png)$ /imgs/hotlinks.png [L] 

RewriteCond %(REQUEST_URI) ^imgs/$ [NC]
RewriteRule / - [F]

ErrorDocument 404 /404.html

ErrorDocument 403 /403.html

问题是,我的图像没有显示在具有重写 URL 的页面中。显然,他们的路线也受到重写的影响。简单解释:位于 www.mywebpage.at/imgs/pic1.jpg 的图像加载到 www.mywebpage.at/files.php?row=first&column=3,但是当我尝试输入 www.mywebpage.at/first/ 3/ 浏览器在 www.mywebpage.at/first/3/imgs/pic1.jpg 中查找图片,显然无法加载。

我该如何解决这个问题,以便图像的路径不会改变,无论我在哪里使用它们?

4

1 回答 1

2

你可以做:

RewriteCond $1 !^(imgs)
RewriteRule ^([A-Za-z]+)/([0-9]+)/$ files.php?row=$1&column=$2 

这将重写除 imgs 文件夹之外的所有内容。

编辑:道歉,误读的问题。

使您的图像路径绝对。例如相对路径是:

imgs/image1.jpg

绝对路径是:

/imgs/image1.jpg

开头的斜线告诉它转到站点的根目录,然后转到 imgs,然后是 image1.jpg。

于 2012-09-24T10:17:39.803 回答