htaccess规则不使用filesmatch

时间:2011-07-30 16:22:14

标签: .htaccess mod-rewrite

<FilesMatch ".js">
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^resources/widget/(.*).js$ /resources/widget/$1.js.gz [L]
ForceType text/javascript
Header set Content-Encoding: gzip
</FilesMatch>

这不适用于js文件

RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^resources/widget/(.*).js$ /resources/widget/$1.js.gz [L]
ForceType text/javascript
Header set Content-Encoding: gzip

这适用于js文件,但它会破坏页面的其余部分。

如何将此规则应用于js文件

2 个答案:

答案 0 :(得分:2)

RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*).js$ $1.js.gz [L]
ForceType text/javascript
Header set Content-Encoding: gzip

在js目录中创建一个htaccess,然后使用它。

答案 1 :(得分:0)

<FilesMatch "\.js$">
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*).js$ $1.js.gz [L]
ForceType text/javascript
Header set Content-Encoding: gzip
</FilesMatch>0