我正在使用我的.htaccess文件重写我的CSS文件的路径:
RewriteRule ^assets/css/min/([a-zA-Z0-9\._-]+)/([a-zA-Z0-9\._-]+)/([a-zA-Z0-9\._-]+)\.css$ assets/css/min.php?style=$1&layout=$2&ver=$3 [L,QSA]
因此,可以http://www.example.com/assets/css/min.php?style=blue&layout=flat
http://www.example.com/assets/css/min/blue/flat/1-0.css
我遇到的问题是我的样式的图像位于:
/assets/css/img/
所以在我的CSS文件中,如果我有一个样式:
.mobile-menu-logo {
display: block;
float: left;
overflow: hidden;
height: 45px;
width: 100%;
background: url('img/mobile-menu-logo.png') 50% 50% no-repeat;
}
...我找不到页面。
如何使用这些.htaccess规则,但仍然可以访问/ img文件夹?
答案 0 :(得分:0)
将.htaccess文件放在您需要忽略的文件夹的根目录中,其中包含以下内容:
RewriteEngine Off
答案 1 :(得分:0)
您可以将此规则放在.htaccess的顶部:
RewriteRule ^(assets/css)/.+/(img/.+)$ /$1/$2 [L,NC,R=301]
您可以在页面HTML的<head>
部分下方添加:
<base href="/assets/css/" />
以便从该基本网址解析每个相对网址,而不是从当前网页的网址解析。