在HTTP服务器上配置缓存和静态内容压缩可以提高网站的性能和加载速度。以下是在Apache和Nginx服务器上配置缓存和静态内容压缩的方法:
首先,确保已经安装了mod_expires和mod_deflate模块。在Debian/Ubuntu系统上,可以使用以下命令安装:
sudo apt-get update sudo apt-get install apache2 sudo a2enmod expires sudo a2enmod deflate
修改Apache的配置文件,例如在httpd.conf或apache2.conf中添加以下内容:
<IfModule mod_expires.c> ExpiresActive On ExpiresByType image/jpg "access plus 1 year" ExpiresByType image/jpeg "access plus 1 year" ExpiresByType image/gif "access plus 1 year" ExpiresByType image/png "access plus 1 year" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month" </IfModule> <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript </IfModule> 其中,ExpiresByType指定要设置缓存的文件类型和缓存时间。AddOutputFilterByType指定要压缩的文件类型。
重启Apache服务器。使用以下命令重启Apache服务器以使配置生效:
sudo systemctl restart apache2
http { gzip on; gzip_vary on; gzip_types text/html text/plain text/css application/javascript; gzip_proxied any; gzip_comp_level 6; expires $expires; expires_in off; expires_modified off; location ~* \.(jpg|jpeg|gif|png|ico|svg|woff|woff2|ttf|otf|eot|mp3|ogg|mp4)$ { expires 1y; add_header Cache-Control "public, max-age=31536000"; } location ~* \.(css|js)$ { expires 1m; add_header Cache-Control "public, max-age=60"; } } 其中,gzip指定是否启用静态内容压缩。gzip_types指定要压缩的文件类型。expires指定是否启用缓存。location指定要设置缓存的文件类型和缓存时间。
sudo systemctl restart nginx