介绍:项目中的CSS、图片、js都是静态文件。一般会将静态文件放到一个单独的目录中,以方便管理。
1. 配置
# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache2.4/docs/www.111.com"
ServerName www.111.com
ServerAlias 111.com
ErrorLog "logs/111.com-error_log"
CustomLog "logs/111.com-access_log" common
</VirtualHost>
上传图片文件到image中
# cd /usr/local/apache2.4/docs/www.111.com/
# mkdir image
# ll image/linux.jpg
检查配置信息
# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
# /usr/local/apache2.4/bin/apachectl graceful
# curl -xlocalhost:80 www.111.com/image/linux.jpg -I
查看日志
# tail -f /usr/local/apache2.4/logs/111.com-access_log
打开网页访问111.com/image/linux.jpg
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache2.4/docs/www.111.com"
ServerName www.111.com
ServerAlias 111.com
SetEnvIf Request_URI ".*\.gif$" image-request
SetEnvIf Request_URI ".*\.jpg$" image-request
SetEnvIf Request_URI ".*\.png$" image-request
SetEnvIf Request_URI ".*\.bmp$" image-request
SetEnvIf Request_URI ".*\.swf$" image-request
SetEnvIf Request_URI ".*\.js$" image- request
SetEnvIf Request_URI ".*\.css$" image- request
ErrorLog "logs/111.com-error_log"
CustomLog "logs/111.com-access_log" combined env=!image-request
</VirtualHost>
//先定义了一个image-request环境变量,把gif,jpg,png, bmp,swf,js,css等格式文件全归类到此,env=!image-request表示日志记录不为image-request中表示的静态文件。
保存配置后,测试配置文件是否正确,没有错误重新加载服务:
#/usr/local/apache2.4/bin/apachectl -t
Syntax OK
#/usr/local/apache2.4/bin/apachectl graceful
(2)配置验证
# curl -xlocalhost:80 www.111.com/image/linux.jpg -I
另打开一个窗口,查看日志,关于jpg格式的没有访问日志信息
# tailf ../../logs/111.com-access_log
访问成功