摘要:访问日志不记录静态文件
网站大多元素为静态文件,如图片、css、js等,这些元素可以不用记录
####修改虚拟主机配置文件
[root@jiangshan~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
网站大多元素为静态文件,如图片、css、js等,这些元素可以不用记录 ####修改虚拟主机配置文件
[root@jiangshan~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf <VirtualHost *:80> DocumentRoot "/data/wwwroot/111.com" ServerName 111.com ServerAlias www.example.com <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} !^111.com$ RewriteRule ^/(.*)$ http://111.com/$1 [R=301,L] </IfModule> ErrorLog "logs/111.com-error_log" SetEnvIf Request_URI ".*.gif$" img SetEnvIf Request_URI ".*.jpg$" img SetEnvIf Request_URI ".*.png$" img SetEnvIf Request_URI ".*.bmp$" img SetEnvIf Request_URI ".*.swf$" img SetEnvIf Request_URI ".*.js$" img SetEnvIf Request_URI ".*.css$" img #以上为定义变量:将所有关于图片的请求定义为变量img CustomLog "logs/111.com-access_log" combined env=!img #“env=!img”表示非img变量。本行命令的含义是:不记录关于变量img的请求日志。 </VirtualHost>
####重新加载配置文件
[root@jiangshan 123.com]# /usr/local/apache2.4/bin/apachectl -t Syntax OK [root@jiangshan 123.com]# /usr/local/apache2.4/bin/apachectl graceful
####创建目录,并在这目录下上传一个图片
mkdir /data/wwwroot/www.123.com/images
####测试
curl -x127.0.0.1:80 -I 123.com/images/123.jpg tail /usr/local/apache2.4/logs/123.com-access_log 访问日志切割
日志一直记录总有一天会把整个磁盘占满,所以有必要让它自动切割,并删除老的日志文件
修改虚拟主机配置文件<VirtualHost *:80> DocumentRoot "/data/wwwroot/www.123.com" ServerName www.123.com ServerAlias 123.com SetEnvIf Request_URI ".*.gif$" img SetEnvIf Request_URI ".*.jpg$" img SetEnvIf Request_URI ".*.png$" img SetEnvIf Request_URI ".*.bmp$" img SetEnvIf Request_URI ".*.swf$" img SetEnvIf Request_URI ".*.js$" img SetEnvIf Request_URI ".*.css$" img CustomLog "|/usr/local/apache2.4/bin/rotatelogs -l logs/123.com-access_%Y%m%d.log 86400" combined env=!img </VirtualHost> 重新加载配置文件
[root@jiangshan 123.com]# /usr/local/apache2.4/bin/apachectl -t Syntax OK [root@jiangshan 123.com]# /usr/local/apache2.4/bin/apachectl graceful
####查看日志
ls /usr/local/apache2.4/logs
####日志切割工具
日志切割工具cronolog和rotatelogs详解
静态元素过期时间浏览器访问网站的图片时会把静态的文件缓存在本地电脑里,这样下次再访问时就不用去远程下载了 增加配置 ####修改配置文件
<IfModule mod_expires.c> ExpiresActive on //打开该功能的开关 ExpiresByType image/gif "access plus 1 days" ExpiresByType image/jpeg "access plus 24 hours" ExpiresByType image/png "access plus 24 hours" ExpiresByType text/css "now plus 2 hour" ExpiresByType application/x-javascript "now plus 2 hours" ExpiresByType application/javascript "now plus 2 hours" ExpiresByType application/x-shockwave-flash "now plus 2 hours" ExpiresDefault "now plus 0 min" </IfModule>
####检测语法错误
[root@adailinux 111.com]# /usr/local/apache2.4/bin/apachectl -t Syntax OK
####是否开启expire模块
[root@adailinux 111.com]# /usr/local/apache2.4/bin/apachectl -M |grep expires ##去掉#开启加载该模块的命令行 [root@adailinux 111.com]# vim /usr/local/apache2.4/conf/httpd.conf LoadModule expires_module modules/mod_expires.so curl测试(Cache-Control)
Cache-control: max-age=5 ##表示当访问此网页后的5秒内再次访问不会去服务器
Cache-Control: no-cache: ##这个很容易让人产生误解,使人误以为是响应不被缓存。实际上Cache-Control: no-cache是会被缓存的,只不过每次在向客户端(浏览器)提供响应数据时,缓存都要向服务器评估缓存响应的有效性。
Cache-Control: no-store: ##这个才是响应不被缓存的意思
Pragma: no-cache: ##跟Cache-Control: no-cache相同,Pragma: no-cache兼容http 1.0 ,Cache-Control: no-cache是http 1.1提供的。
Pragma: no-cache可以应用到http 1.0 和http 1.1,而Cache-Control: no-cache只能应用于http 1.1.
相关文章推荐
虚拟主机的专业参数,分别都是什么意思?2022-09-09
中非域名注册规则是怎样的?注册域名有什么用处? 2022-01-10
HostEase新年活动促销 美国/香港主机全场低至五折2021-12-28
HostGator下载完整备份教程分享2021-12-28
Flink中有界数据与无界数据的示例分析2021-12-28