3

我运行一个服务器,上面有几个网站。我想为所有这些网站实现默认缓存控制行为。我可以通过将以下代码添加到 httpd.conf 来做到这一点,还是必须分别更改每个虚拟主机的配置?

<IfModule mod_expires.c>
ExpiresActive on

# Your document html
ExpiresByType text/html "access plus 12 hours"

# Media: images, video, audio
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"

# CSS and JavaScript
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"

# Default
ExpiresDefault "access plus 1 month"
</IfModule>
4

1 回答 1

4

文档可以在Apache HTTP Server 网站上找到。在左侧窗格的“文档”部分中,单击您的服务器版本。我假设 2.4。由于您正在寻找特定指令的参考,您可以单击指令链接。你会得到一个字母索引。

我不会复制完整的信息,只是为ExpiresActive. 重要的是顶表

Description: Enables generation of Expires headers
Syntax:      ExpiresActive On|Off
Default:     ExpiresActive Off
Context:     server config, virtual host, directory, .htaccess
Override:    Indexes
Status:      Extension
Module:      mod_expires

在“上下文”中,我们可以读到该指令可以在多个位置设置,包括服务器配置。所以这回答了你的问题:理论上,它应该有效。您应该检查其余指令以确保(或只是测试它)。

于 2013-09-10T07:25:16.847 回答