我有以下 mod_rewrite 代码:
Options +FollowSymLinks
RewriteEngine On
#SecFilterInheritance Off
ErrorDocument 404 /fourohfour.php
RewriteCond %{HTTP_HOST} ^(myurl\.com)$ [NC] **changed the domain name for this posting **
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]
RewriteRule ^articles/([^/]+)/([^/]+)/?$ /article.php?id=$1&articleTopic=$2 [QSA,L]
问题是当我访问 artcle.php 网址时,我的 CSS 文档中引用的图像不再加载。这可能是因为现在我正在使用 mod rewrite,他们需要 myurl.com 绝对路径
例如:
background: #D4D9DD url('images/bg03.jpg');
需要改为:
background: #D4D9DD url('http://www.myurl.com/images/bg03.jpg');
但是我在许多 CSS 文件中有很多图像。
有没有一种方法可以修改 .htaccess,以便保留 CSS 中的相对路径,并且我不必在我的 CSS 文件中手动更改每个图像引用?
最佳答案
在不需要时让服务器承担不必要的重写图像请求工作可能不是最好的主意。
大概浏览器是这样请求图像的:
http://www.myurl.com/article/IDNum/ArticleTitle/bg03.jpg
所以你仍然可以使用相对路径,他们只需要考虑到假目录:
background: #D4D9DD url('../../images/bg03.jpg');
只需运行大量搜索并替换,将 'images/ 替换为 '../../images/
同样的逻辑也适用于 mod_rewrite 规则,但是,为什么要使用不需要的处理器周期呢?希望有一天您的网站流量会很高,您会感谢自己保持高效。
或者: http://www.w3schools.com/tags/tag_base.asp
旁注:搜索引擎真的不再关心搜索引擎友好的 URL。好多年没有了。
关于php - .css 样式表中的 mod_rewrite 图像现在需要绝对路径吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23936378/