2011-09-24 56 views
12

如何缓存几个特定的​​JavaScript & CSS文件。我发现建议从这个网站把这个在我的.htaccess文件缓存特定的Javascript和CSS文件

AddOutputFilter DEFLATE css js 
ExpiresActive On 
ExpiresByType application/x-javascript A2592000 

但它是不完整的。 .htaccess什么是.htaccess以及如何在我的网站根文件夹中创建它,将其存储在何处?

什么是下面的语句的含义是:

AddOutputFilter DEFLATE css js 
ExpiresActive On 
ExpiresByType application/x-javascript A2592000 

我不想缓存所有我的JavaScript & CSS文件,而只是将永远不会改变少数几个特定文件。

我该怎么做?

+2

? '.htaccess'是Apache Web服务器的控制文件。如果你使用IIS,它没有任何意义。 – Oded

+0

我将使用IIS ...所以请告诉我该怎么做。我需要写在我的asp.net文件缓存几个特定的​​JS和CSS文件。 plzz详细讨论。谢谢 –

回答

25

您可以配置IIS通过扩展缓存特定文件。例如:

选择您的css/js文件所在的文件夹,然后单击输出缓存。 enter image description here

然后添加你要缓存的文件扩展名:

enter image description here

我不认为你可以指定除非你写一个HTTP 处理器在缓存每个文件的基础哪些模块为每个文件独立添加适当的头文件,但是从IIS开始,这是如何完成的。

然后,您可以使用萤火虫/提琴手或您选择的工具验证您是否收到304个响应。

我希望这是有帮助的。

+0

我可以通过HTTP处理程序缓存js&css文件....如果是这样,可以指出我的任何好文章。 –

+0

@ user750398看这篇文章:http://blog.sb2.fr/post/2008/11/21/EN-Css-Caching-and-Compression-with-HttpModule-for-ASPNET.aspx – Icarus

0
  1. AddOutputFilter DEFLATE: 在这种情况下css & js你的CSS和JS发送到服务器之前,输出压缩(通常是gzip的)。
  2. ExpiresActive On配置:设置Expires和缓存控制标头在
  3. ExpiresByType:设置内容类型的过期规则在这种情况下application/x-javascript一个月A2592000 => 24 * 3600 * 30ms

向我推荐的,而不是通过的.htaccess你应该添加一个版本号到您的JS文件,ALA处理特定JS:

<script src="link/to/file.js?rev=xxx"></script>

然后,当你更新你的文件刚刚更新转数。 并且您的客户将自动获得新文件。

资源:

+3

我使用的IIS不是apache。 –

1

这很酷,我会反正添加一个文件修订并使IIS缓存css + js文件。如伊卡洛斯指定的那样。

然后,如果您更新服务器上的文件只需添加一个新的修订版本号,这也可以是一个时间戳。

您正在使用什么网络服务器