<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CodePy.Net &#187; apache</title>
	<atom:link href="http://codepy.net/tag/apache/feed" rel="self" type="application/rss+xml" />
	<link>http://codepy.net</link>
	<description>专注网络开发：Python,PHP,Vim,Linux 分享我的快乐 -- Share My Happiness</description>
	<lastBuildDate>Sun, 15 Jan 2012 16:20:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>网站性能优化小结 – 前端优化</title>
		<link>http://codepy.net/2009/10/21/web-optimization-fron-end-optimization.html</link>
		<comments>http://codepy.net/2009/10/21/web-optimization-fron-end-optimization.html#comments</comments>
		<pubDate>Wed, 21 Oct 2009 12:50:04 +0000</pubDate>
		<dc:creator>ruitao</dc:creator>
				<category><![CDATA[编程随想]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://codepy.net/?p=162</guid>
		<description><![CDATA[说到对前端的优化，不得不提到Yahoo 的 Exceptional Performance Team，他们的努力，为我们提供了34条优化建议，并且提供了Firefox下面进行前端分析的扩展YSlow，根据 YSlow对网站的分析报告，逐条进行优化即可。下面只是总结一下我在优化我们网站时针对YSlow分析生成的报告中需要配置服务器端的部分： 1.Add Expires headers 在HTTP/1.1中，Expires headers出现在Caching in HTTP中，用户通过浏览器第一次访问我们的网站时，会请求很多静态文件（css，js，图片等），我们可以通过添加Expires headers来缓存这些文件，以Apache为例： 先注释掉httpd.conf里面的 LoadModule headers_module modules/mod_headers.so 在文件末尾添加上： ExpiresActive On ExpiresDefault &#34;access plus 1 year&#34; 这里我将文件的有效时间设置为1年。 关于Apache mod_headers的文档，查看这里 2.Compress components with gzip 用gzip压缩服务器端和浏览器端传输的数据，可以大大减少流量，按照YSlow中的说法：“Approximately 90% of today’s Internet traffic travels through browsers that claim to support gzip”，所以我们大可启用gzip压缩来减少流量。也是以Apache为例： 注释掉http.conf里面的 LoadModule deflate_module modules/mod_deflate.so 添加 DeflateCompressionLevel 6 AddOutputFilterByType [...]]]></description>
			<content:encoded><![CDATA[<p>说到对前端的优化，不得不提到Yahoo 的 Exceptional Performance Team，他们的努力，为我们提供了34条优化建议，并且提供了Firefox下面进行前端分析的扩展YSlow，根据 YSlow对网站的分析报告，逐条进行优化即可。下面只是总结一下我在优化我们网站时针对YSlow分析生成的报告中需要配置服务器端的部分：<br />
<strong><br />
1.Add Expires headers</strong></p>
<p>在HTTP/1.1中，Expires headers出现在Caching in HTTP中，用户通过浏览器第一次访问我们的网站时，会请求很多静态文件（css，js，图片等），我们可以通过添加Expires headers来缓存这些文件，以Apache为例： 先注释掉httpd.conf里面的</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">LoadModule</span> headers_module modules/mod_headers.so</pre></div></div>

<p>在文件末尾添加上：</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">ExpiresActive</span> <span style="color: #0000ff;">On</span>
<span style="color: #00007f;">ExpiresDefault</span> <span style="color: #7f007f;">&quot;access plus 1 year&quot;</span></pre></div></div>

<p>这里我将文件的有效时间设置为1年。 关于Apache mod_headers的文档，查看这里</p>
<p><strong>2.Compress components with gzip</strong></p>
<p>用gzip压缩服务器端和浏览器端传输的数据，可以大大减少流量，按照YSlow中的说法：“Approximately 90% of today’s Internet traffic travels through browsers that claim to support gzip”，所以我们大可启用gzip压缩来减少流量。也是以Apache为例：<br />
注释掉http.conf里面的</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">LoadModule</span> deflate_module modules/mod_deflate.so</pre></div></div>

<p>添加</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">DeflateCompressionLevel</span> <span style="color: #ff0000;">6</span>
<span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/html text/plain text/xml application/x-httpd-php
<span style="color: #00007f;">AddOutputFilter</span> DEFLATE js css</pre></div></div>

<p>到文件末尾，这里我们只对js和css进行压缩，不至于占用太多的CPU资源，jpg、png这些本身就是被压缩好的文件也没有必要进行二次压缩。 DeflateCompressionLevel表示的是压缩程度，越高的压缩程度就会有越好的压缩效果，同时也意味着占用越多的CPU资源。取值范围在 1~9之间，这里我们选择6，保证较好的压缩效果又不占用太多的CPU资源。</p>
<p><strong>3.Configure entity tags (ETags)</strong></p>
<p>关闭last-modified和Etags可以减少服务器的带宽和负载，简单点说，这两个参数会比较本地缓存的资源对应的服务器资源是否被修改过，如果修改过，则重新下载。想更深入地了解，可以看一下InfoQ的《使用ETags减少Web应用带宽和负载》。同样，以Apache为例，我们通过添加以下规则来关闭last-modified和Etags： # 关闭last-modified</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">Header</span> unset Last-Modified</pre></div></div>

<p># 关闭etags</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">FileETag</span> <span style="color: #0000ff;">none</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://codepy.net/2009/10/21/web-optimization-fron-end-optimization.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

