我正在实施以下缓存问题的解决方案: How to force browser to reload cached CSS/JS files?
但浏览器在更改名称后无法找到我的css文件。 当我手动打开它时,它会给出404错误。
这是我完整的.htaccess代码:
RewriteEngine on
RewriteBase /App
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]
RewriteRule ^(.*)\.[\d]{10}\.(css|js)$ $1.$2 [L]
# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
我的css文件路径是: /assets/master.css
基本上我想做的是动态重写所有css&像这样的js文件:master.1454667174.css到这个:master.css
我希望服务器在文件扩展名之前忽略该10位数字,并仅将master.css文件返回给浏览器。
请帮助..
答案 0 :(得分:1)
url重写应该会影响您的文件路径。你必须在css或js文件路径中加上'/'。 示例:您的原始文件路径 - > CSS / style.css中
你必须这样做 - > /css/style.css
这与js和图像路径相同..
(或)
您必须将基本网址链接放在头标记
中https://www.w3schools.com/tags/att_base_href.asp
引用此方法获取基本url html语法