我刚刚创建了一个本地环境,其中包含了我在生产环境中使用ubuntu32进入流浪虚拟机的相同代码,
问题是我在.htaccess
文件
所以我开始删除分隔的代码块,这就是麻烦:
# 1 weeks
<FilesMatch "\.(js|css)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
# 1 weeks
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
# 1 MIN
<FilesMatch "\.(html|htm|php)$">
Header set Cache-Control "max-age=60, private, proxy-revalidate"
</FilesMatch>
问题是我想对所有环境使用完全相同的代码,有没有一种方法我只能在<filesMatch>
中只包含localhost
块?
我找到了这个answer,但它只是指一个页面,而不是主机名。
答案 0 :(得分:0)
您可以这样做:
SetEnvIf Host ^ NON_LOCAL
SetEnvIf Host localhost !NON_LOCAL
<FilesMatch "\.(js|css)$">
Header set Cache-Control "max-age=604800, public" env=NON_LOCAL
</FilesMatch>
# 1 weeks
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=604800, public" env=NON_LOCAL
</FilesMatch>
# 1 MIN
<FilesMatch "\.(html|htm|php)$">
Header set Cache-Control "max-age=60, private, proxy-revalidate" env=NON_LOCAL
</FilesMatch>