我每天使用mamp Pro在本地测试基于php的网站,虽然我是一个简单的设计师并且写PhP真的不是我的事.自从我安装OS X ML以来我遇到的问题是,当在浏览器中测试网站时,图像似乎缓存一次,然后永远不会刷新,即使在替换相同的图像或在PS中编辑它之后也是如此.
我认为这是MAMP的图像缓存问题,因为它发生在所有浏览器中,除非我在刷新页面之前清除缓存.HTML和CSS更新非常好.
毋庸置疑,这是一个巨大的问题,因为它意味着我需要做一大堆测试的东西而不是简单的页面刷新.
有人有这个问题或者可以提供解决方案吗?
MAMP似乎默认启用mod_expires(至少在我的MAMP 2.1.0安装上),因此您应该能够在.htaccess文件中添加一些适当的设置.
默认立即过期:
ExpiresActive On
ExpiresDefault "now"
Run Code Online (Sandbox Code Playgroud)
或者更细化(修改expiries以适合您的测试):
ExpiresActive On
ExpiresDefault "now"
ExpiresByType image/gif "access plus 10 seconds"
ExpiresByType image/jpeg "access plus 10 seconds"
ExpiresByType image/png "access plus 10 seconds"
ExpiresByType text/css "access plus 10 seconds"
ExpiresByType text/javascript "access plus 2 minutes"
ExpiresByType application/x-javascript "access plus 2 minutes"
ExpiresByType application/x-shockwave-flash "access plus 10 minutes"
ExpiresByType text/xml "access plus 5 seconds"
Run Code Online (Sandbox Code Playgroud)
如果有关无效指令的错误,则需要启用mod_expires.
在MAMP PRO中,这是在Server => Apache选项卡上完成的.确保expires_module检查模块.
在香草MAMP中你可以编辑/Applications/MAMP/conf/apache/httpd.conf.应该有一个注释掉的行类似于:
#LoadModule expires_module modules/mod_expires.so
...删除前导"#"以取消注释.
启用后,mod_expires您需要使用MAMP管理界面来停止/启动服务器,现在应该可以使用Expires指令.