<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Speed Tips: Add Cache-Control Headers</title>
	<atom:link href="http://www.askapache.com/htaccess/apache-speed-cache-control.html/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html</link>
	<description>Advanced Web Development</description>
	<lastBuildDate>Wed, 15 May 2013 08:30:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Emy</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-7333</link>
		<dc:creator>Emy</dc:creator>
		<pubDate>Mon, 28 Jan 2013 18:36:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-7333</guid>
		<description><![CDATA[Thanks you very much

&lt;p&gt;What do you think about:&lt;/p&gt;
&lt;pre&gt;Header add Cache-Control &quot;max-age=7200&quot;&lt;/pre&gt;]]></description>
		<content:encoded><![CDATA[<p>Thanks you very much</p>
<p>What do you think about:</p>
<pre>Header add Cache-Control "max-age=7200"</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kate</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-4982</link>
		<dc:creator>Kate</dc:creator>
		<pubDate>Mon, 14 Jan 2013 05:18:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-4982</guid>
		<description><![CDATA[Whenever you include a full, simple, clear code in the posts, especially what you&#039;re actually doing, you are doing really well. I have to say &quot;thank you&quot;. 
I had a page-loading-slow problem, after trying hours, your posts save my time. It takes minutes to get things done.]]></description>
		<content:encoded><![CDATA[<p>Whenever you include a full, simple, clear code in the posts, especially what you're actually doing, you are doing really well. I have to say "thank you".<br />
I had a page-loading-slow problem, after trying hours, your posts save my time. It takes minutes to get things done.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1794</link>
		<dc:creator>Eric</dc:creator>
		<pubDate>Mon, 12 Nov 2012 16:21:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1794</guid>
		<description><![CDATA[&lt;p&gt;Great stuff! So what&#039;s better in your opinion?&lt;/p&gt;

&lt;pre&gt;# 1 YEAR
Header set Cache-Control &quot;public&quot;
Header set Expires &quot;Thu, 15 Apr 2010 20:00:00 GMT&quot;
Header unset Last-Modified&lt;/pre&gt;
&lt;p&gt;Vs&lt;/p&gt;
&lt;pre&gt;ExpiresActive On
ExpiresDefault &quot;access plus 10 years&quot;
ExpiresByType text/html &quot;access plus 1 day&quot;&lt;/pre&gt;
]]></description>
		<content:encoded><![CDATA[<p>Great stuff! So what's better in your opinion?</p>
<pre># 1 YEAR
Header set Cache-Control "public"
Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
Header unset Last-Modified</pre>
<p>Vs</p>
<pre>ExpiresActive On
ExpiresDefault "access plus 10 years"
ExpiresByType text/html "access plus 1 day"</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hemant</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1792</link>
		<dc:creator>Hemant</dc:creator>
		<pubDate>Sun, 20 May 2012 21:20:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1792</guid>
		<description><![CDATA[How can i implement this in blogger?]]></description>
		<content:encoded><![CDATA[<p>How can i implement this in blogger?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wilma</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1790</link>
		<dc:creator>Wilma</dc:creator>
		<pubDate>Sat, 19 May 2012 01:37:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1790</guid>
		<description><![CDATA[thank you, I have used so many codes. But I always got statement:&quot;internal server error&quot;. Finally, it really works!]]></description>
		<content:encoded><![CDATA[<p>thank you, I have used so many codes. But I always got statement:"internal server error". Finally, it really works!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1789</link>
		<dc:creator>James</dc:creator>
		<pubDate>Wed, 11 Apr 2012 19:37:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1789</guid>
		<description><![CDATA[&lt;p&gt;When I added the following code, I am getting two expiry dates.&lt;/p&gt;

&lt;pre&gt;Header set Cache-Control &quot;public&quot;
Header set Expires &quot;Thu, 31 Dec 2013 20:00:00 GMT&quot;
Header unset Last-Modified&lt;/pre&gt;

&lt;p&gt;Mine is an Elgg installation. Can you suggest some better optimizations for the &lt;a href=&quot;https://github.com/Elgg/Elgg/blob/master/htaccess_dist&quot;&gt;elgg htaccess&lt;/a&gt;?&lt;/p&gt;
&lt;pre&gt;# Elgg htaccess directives
# Copyright Curverider Ltd 2008-2009
# License http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
# Link http://elgg.org/
&#160;
&lt;Files &quot;htaccess_dist&quot;&gt;
  order allow,deny
  deny from all
&lt;/Files&gt;
&#160;
# Don&#039;t listing directory
Options -Indexes
&#160;
# Follow symbolic links
Options +FollowSymLinks
&#160;
# Default handler
DirectoryIndex index.php
&#160;
# Turn on expiry
&lt;IfModule mod_expires.c&gt;
  ExpiresActive On
  ExpiresDefault &quot;access plus 10 years&quot;
&lt;/IfModule&gt;
&#160;
# php 5, apache 1 and 2
&lt;IfModule mod_php5.c&gt;
  # limit the maximum memory consumed by the php script to 64 MB
  php_value memory_limit 64M
  # register_globals is deprecated as of PHP 5.3.0 - disable it for security reasons.
  php_value register_globals 0
  # post_max_size is the maximum size of ALL the data that is POST&#039;ed to php at a time (8 MB)
  php_value post_max_size 8388608
  # upload_max_filesize is the maximum size of a single uploaded file (5 MB)
  php_value upload_max_filesize 5242880
  # on development servers, set to 1 to display errors. Set to 0 on production servers.
  php_value display_errors 0
&lt;/IfModule&gt;
&#160;
# Turn on mod_gzip if available
&lt;IfModule mod_gzip.c&gt;
  mod_gzip_on yes
  mod_gzip_dechunk yes
  mod_gzip_keep_workfiles No
  mod_gzip_minimum_file_size 1000
  mod_gzip_maximum_file_size 1000000
  mod_gzip_maximum_inmem_size 1000000
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/javascript$
  mod_gzip_item_include mime ^application/x-javascript$
  # Exclude old browsers and images since IE has trouble with this
  mod_gzip_item_exclude reqheader &quot;User-Agent: .*Mozilla/4..*[&quot;
  mod_gzip_item_exclude mime ^image/.*
&lt;/IfModule&gt;
&#160;
## Apache2 deflate support if available
##
## Important note: mod_headers is required for correct functioning across proxies.
##
&lt;IfModule mod_deflate.c&gt;
  AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4.[0678] no-gzip
  BrowserMatch bMSIE !no-gzip
&#160;
&lt;IfModule mod_headers.c&gt;
  Header append Vary User-Agent env=!dont-vary
&lt;/IfModule&gt;
&#160;
  # The following is to disable compression for actions. The reason being is that these
  # may offer direct downloads which (since the initial request comes in as text/html and headers
  # get changed in the script) get double compressed and become unusable when downloaded by IE.
  SetEnvIfNoCase Request_URI action/* no-gzip dont-vary
  SetEnvIfNoCase Request_URI actions/* no-gzip dont-vary
&#160;
&lt;/IfModule&gt;
&#160;
# Configure ETags
&lt;FilesMatch &quot;.(jpg&#124;jpeg&#124;gif&#124;png&#124;mp3&#124;flv&#124;mov&#124;avi&#124;3pg&#124;html&#124;htm&#124;swf&#124;js&#124;ico)$&quot;&gt;
  FileETag MTime Size
&lt;/FilesMatch&gt;
&#160;
#  Add Proper MIME-Type for Favicon to allow expires to work
AddType image/vnd.microsoft.icon .ico
&#160;
&lt;IfModule mod_rewrite.c&gt;
&#160;
RewriteEngine on
&#160;
# If Elgg is in a subdirectory on your site, you might need to add a RewriteBase line
# containing the path from your site root to elgg&#039;s root. e.g. If your site is
# http://example.com/ and Elgg is in http://example.com/sites/elgg/, you might need
#
#RewriteBase /sites/elgg/
#
# here, only without the # in front.
#
# If you&#039;re not running Elgg in a subdirectory on your site, but still getting lots
# of 404 errors beyond the front page, you could instead try:
#
#RewriteBase /
&#160;
# In for backwards compatibility
RewriteRule ^pg/([A-Za-z0-9_-]+)$ engine/handlers/page_handler.php?handler=$1&amp;%{QUERY_STRING}
RewriteRule ^pg/([A-Za-z0-9_-]+)/(.*)$ engine/handlers/page_handler.php?handler=$1&amp;page=$2&amp;%{QUERY_STRING}
RewriteRule ^tag/(.+)/?$ engine/handlers/page_handler.php?handler=search&amp;page=$1
&#160;
RewriteRule ^action/([A-Za-z0-9_-/]+)$ engine/handlers/action_handler.php?action=$1&amp;%{QUERY_STRING}
&#160;
RewriteRule ^cache/(.*)$ engine/handlers/cache_handler.php?request=$1&amp;%{QUERY_STRING}
&#160;
RewriteRule ^services/api/([A-Za-z0-9_-]+)/(.*)$ engine/handlers/service_handler.php?handler=$1&amp;request=$2&amp;%{QUERY_STRING}
&#160;
RewriteRule ^export/([A-Za-z]+)/([0-9]+)/?$ engine/handlers/export_handler.php?view=$1&amp;guid=$2
RewriteRule ^export/([A-Za-z]+)/([0-9]+)/([A-Za-z]+)/([A-Za-z0-9_]+)/$ engine/handlers/export_handler.php?view=$1&amp;guid=$2&amp;type=$3&amp;idname=$4
&#160;
# rule for rewrite module test during install - can be removed after installation
RewriteRule ^rewrite.php$ install.php
&#160;
# Everything else that isn&#039;t a file gets routed through the page handler
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([A-Za-z0-9_-.]+)$ engine/handlers/page_handler.php?handler=$1 [QSA]
&#160;
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([A-Za-z0-9_-]+)/(.*)$ engine/handlers/page_handler.php?handler=$1&amp;page=$2 [QSA]
&#160;
&lt;/IfModule&gt;&lt;/pre&gt;]]></description>
		<content:encoded><![CDATA[<p>When I added the following code, I am getting two expiry dates.</p>
<pre>Header set Cache-Control "public"
Header set Expires "Thu, 31 Dec 2013 20:00:00 GMT"
Header unset Last-Modified</pre>
<p>Mine is an Elgg installation. Can you suggest some better optimizations for the <a href="https://github.com/Elgg/Elgg/blob/master/htaccess_dist">elgg htaccess</a>?</p>
<pre># Elgg htaccess directives
# Copyright Curverider Ltd 2008-2009
# License http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
# Link http://elgg.org/
&nbsp;
&lt;Files "htaccess_dist"&gt;
  order allow,deny
  deny from all
&lt;/Files&gt;
&nbsp;
# Don't listing directory
Options -Indexes
&nbsp;
# Follow symbolic links
Options +FollowSymLinks
&nbsp;
# Default handler
DirectoryIndex index.php
&nbsp;
# Turn on expiry
&lt;IfModule mod_expires.c&gt;
  ExpiresActive On
  ExpiresDefault "access plus 10 years"
&lt;/IfModule&gt;
&nbsp;
# php 5, apache 1 and 2
&lt;IfModule mod_php5.c&gt;
  # limit the maximum memory consumed by the php script to 64 MB
  php_value memory_limit 64M
  # register_globals is deprecated as of PHP 5.3.0 - disable it for security reasons.
  php_value register_globals 0
  # post_max_size is the maximum size of ALL the data that is POST'ed to php at a time (8 MB)
  php_value post_max_size 8388608
  # upload_max_filesize is the maximum size of a single uploaded file (5 MB)
  php_value upload_max_filesize 5242880
  # on development servers, set to 1 to display errors. Set to 0 on production servers.
  php_value display_errors 0
&lt;/IfModule&gt;
&nbsp;
# Turn on mod_gzip if available
&lt;IfModule mod_gzip.c&gt;
  mod_gzip_on yes
  mod_gzip_dechunk yes
  mod_gzip_keep_workfiles No
  mod_gzip_minimum_file_size 1000
  mod_gzip_maximum_file_size 1000000
  mod_gzip_maximum_inmem_size 1000000
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/javascript$
  mod_gzip_item_include mime ^application/x-javascript$
  # Exclude old browsers and images since IE has trouble with this
  mod_gzip_item_exclude reqheader "User-Agent: .*Mozilla/4..*["
  mod_gzip_item_exclude mime ^image/.*
&lt;/IfModule&gt;
&nbsp;
## Apache2 deflate support if available
##
## Important note: mod_headers is required for correct functioning across proxies.
##
&lt;IfModule mod_deflate.c&gt;
  AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4.[0678] no-gzip
  BrowserMatch bMSIE !no-gzip
&nbsp;
&lt;IfModule mod_headers.c&gt;
  Header append Vary User-Agent env=!dont-vary
&lt;/IfModule&gt;
&nbsp;
  # The following is to disable compression for actions. The reason being is that these
  # may offer direct downloads which (since the initial request comes in as text/html and headers
  # get changed in the script) get double compressed and become unusable when downloaded by IE.
  SetEnvIfNoCase Request_URI action/* no-gzip dont-vary
  SetEnvIfNoCase Request_URI actions/* no-gzip dont-vary
&nbsp;
&lt;/IfModule&gt;
&nbsp;
# Configure ETags
&lt;FilesMatch ".(jpg|jpeg|gif|png|mp3|flv|mov|avi|3pg|html|htm|swf|js|ico)$"&gt;
  FileETag MTime Size
&lt;/FilesMatch&gt;
&nbsp;
#  Add Proper MIME-Type for Favicon to allow expires to work
AddType image/vnd.microsoft.icon .ico
&nbsp;
&lt;IfModule mod_rewrite.c&gt;
&nbsp;
RewriteEngine on
&nbsp;
# If Elgg is in a subdirectory on your site, you might need to add a RewriteBase line
# containing the path from your site root to elgg's root. e.g. If your site is
# http://example.com/ and Elgg is in http://example.com/sites/elgg/, you might need
#
#RewriteBase /sites/elgg/
#
# here, only without the # in front.
#
# If you're not running Elgg in a subdirectory on your site, but still getting lots
# of 404 errors beyond the front page, you could instead try:
#
#RewriteBase /
&nbsp;
# In for backwards compatibility
RewriteRule ^pg/([A-Za-z0-9_-]+)$ engine/handlers/page_handler.php?handler=$1&amp;%{QUERY_STRING}
RewriteRule ^pg/([A-Za-z0-9_-]+)/(.*)$ engine/handlers/page_handler.php?handler=$1&amp;page=$2&amp;%{QUERY_STRING}
RewriteRule ^tag/(.+)/?$ engine/handlers/page_handler.php?handler=search&amp;page=$1
&nbsp;
RewriteRule ^action/([A-Za-z0-9_-/]+)$ engine/handlers/action_handler.php?action=$1&amp;%{QUERY_STRING}
&nbsp;
RewriteRule ^cache/(.*)$ engine/handlers/cache_handler.php?request=$1&amp;%{QUERY_STRING}
&nbsp;
RewriteRule ^services/api/([A-Za-z0-9_-]+)/(.*)$ engine/handlers/service_handler.php?handler=$1&amp;request=$2&amp;%{QUERY_STRING}
&nbsp;
RewriteRule ^export/([A-Za-z]+)/([0-9]+)/?$ engine/handlers/export_handler.php?view=$1&amp;guid=$2
RewriteRule ^export/([A-Za-z]+)/([0-9]+)/([A-Za-z]+)/([A-Za-z0-9_]+)/$ engine/handlers/export_handler.php?view=$1&amp;guid=$2&amp;type=$3&amp;idname=$4
&nbsp;
# rule for rewrite module test during install - can be removed after installation
RewriteRule ^rewrite.php$ install.php
&nbsp;
# Everything else that isn't a file gets routed through the page handler
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([A-Za-z0-9_-.]+)$ engine/handlers/page_handler.php?handler=$1 [QSA]
&nbsp;
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([A-Za-z0-9_-]+)/(.*)$ engine/handlers/page_handler.php?handler=$1&amp;page=$2 [QSA]
&nbsp;
&lt;/IfModule&gt;</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: AskApache</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1787</link>
		<dc:creator>AskApache</dc:creator>
		<pubDate>Sat, 24 Mar 2012 18:36:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1787</guid>
		<description><![CDATA[Use my online http header tool to view http://www.askapache.com/ to see which headers I send, and which ones your site sends, then find what headers you are missing (probably just need to this):

&lt;pre&gt;Header set Cache-Control &quot;public,max-age=29030400&quot;&lt;/pre&gt;]]></description>
		<content:encoded><![CDATA[<p>Use my online http header tool to view http://www.askapache.com/ to see which headers I send, and which ones your site sends, then find what headers you are missing (probably just need to this):</p>
<pre>Header set Cache-Control "public,max-age=29030400"</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: ECDL</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1786</link>
		<dc:creator>ECDL</dc:creator>
		<pubDate>Sat, 24 Dec 2011 21:45:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1786</guid>
		<description><![CDATA[Thank you for the advice, hopefully it will push my page speed up :)]]></description>
		<content:encoded><![CDATA[<p>Thank you for the advice, hopefully it will push my page speed up :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Philemon</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1785</link>
		<dc:creator>Philemon</dc:creator>
		<pubDate>Mon, 19 Dec 2011 08:30:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1785</guid>
		<description><![CDATA[Informative article, this is the best information so far its easier to follow. Thanks]]></description>
		<content:encoded><![CDATA[<p>Informative article, this is the best information so far its easier to follow. Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Renato Merino</title>
		<link>http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1784</link>
		<dc:creator>Renato Merino</dc:creator>
		<pubDate>Sun, 18 Dec 2011 00:41:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.askapache.com/htaccess/apache-speed-cache-control.html#comment-1784</guid>
		<description><![CDATA[Hi:

First iwant to thank you for all the tricks you have on this amazing website, im starting with pagespeed and i notice that no matter which code i paste in my htaccess i always get the Optimize caching warning: &quot;By specifying a cache validator - a Last-Modified or ETag header - you ensure that the validity of cached resources can efficiently be determined.&quot;

I read your all your related posts and still nothing:

Header unset Pragma
FileETag None
Header unset ETag

# 1 YEAR

Header set Cache-Control &quot;public&quot;
Header set Expires &quot;Mon, 17 Dic 2012 20:00:00 GMT&quot;
Header unset Last-Modified


# 4 HOURS

Header set Cache-Control &quot;max-age=14400, must-revalidate&quot;


# CACHED FOREVER
# MOD_REWRITE TO RENAME EVERY CHANGE

Header set Cache-Control &quot;public&quot;
Header set Expires &quot;Mon, 17 Dic 2015 20:00:00 GMT&quot;
Header unset Last-Modified


Am i doing something wrong or do i need to paste something else?

Thanks for any help in advance]]></description>
		<content:encoded><![CDATA[<p>Hi:</p>
<p>First iwant to thank you for all the tricks you have on this amazing website, im starting with pagespeed and i notice that no matter which code i paste in my htaccess i always get the Optimize caching warning: "By specifying a cache validator - a Last-Modified or ETag header - you ensure that the validity of cached resources can efficiently be determined."</p>
<p>I read your all your related posts and still nothing:</p>
<p>Header unset Pragma<br />
FileETag None<br />
Header unset ETag</p>
<p># 1 YEAR</p>
<p>Header set Cache-Control "public"<br />
Header set Expires "Mon, 17 Dic 2012 20:00:00 GMT"<br />
Header unset Last-Modified</p>
<p># 4 HOURS</p>
<p>Header set Cache-Control "max-age=14400, must-revalidate"</p>
<p># CACHED FOREVER<br />
# MOD_REWRITE TO RENAME EVERY CHANGE</p>
<p>Header set Cache-Control "public"<br />
Header set Expires "Mon, 17 Dic 2015 20:00:00 GMT"<br />
Header unset Last-Modified</p>
<p>Am i doing something wrong or do i need to paste something else?</p>
<p>Thanks for any help in advance</p>
]]></content:encoded>
	</item>
</channel>
</rss>
