.htaccess重写规则打破css

时间:2012-02-05 23:21:11

标签: php css apache .htaccess mod-rewrite

我还是.htaccess的新手

所以我在stackoverflow上查找了我的答案,我无法找到它。我有我必须设置的网站规则所以我从中得到了我的规则:

SEO Friendly URL to Dynamic URL using PHP

RewriteEngine on
RewriteBase /
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule  ^(.*)$ index.php?request=$1 [QSA,L]

但由于某种原因,我的CSS被破坏但我的PHP很好

示例网址:

http://www.domain.com/aboutme
http://www.domain.com/css/version.css

2 个答案:

答案 0 :(得分:5)

问题是由于大写文件名Version.css

如果你的devbox是windows,那就行了。 Windows不区分大小写 但是当你在服务器(Unix)中测试时,它会破坏 因为Unix区分大小写

最好将Version.css重命名为version.css。它对未来安全

答案 1 :(得分:1)

我对这个问题有一个很好的答案。我一直在寻找一个简单的解决方案,不会让我的所有相对路径的硬编码链接,如imgs,css,javascript ......

所以在这里,在您遇到问题的页面的<head>标签之间添加:

<base href='http://www.mydomain.com/'>

这将使您的相对路径链接从此基本链接开始。就这么简单。

<base>标记指定文档中所有相对URL的基本URL /目标。将<base>标记作为<head>元素中的第一个元素,以便head部分中的其他元素使用<base>元素中的信息。

它对你有用吗?