.htaccess ‹filesMatch›, только если имя хоста совпадает?

Я только что настроил локальную среду с тем же кодом, что и в производственной среде, на бродячую виртуальную машину с ubuntu32,

Дело в том, что я получил Internal Server Error со всеми моими правилами в файле .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?

Я нашел этот ответ, но он относится только к странице, а не к имени хоста.


person Toni Michel Caubet    schedule 15.03.2014    source источник


Ответы (1)


Вероятно, вы можете сделать:

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>
person anubhava    schedule 07.04.2014