接上篇 linux服务器部署系列之一—Apache篇(上)
四、管理日志文件
Apache日志分为访问日志和错误日志两种:
1)访问日志
用于记录客户端的访问信息,文件名默认为access_log,可以通过参数CustomLog设置日志文件存放的位置和文件名:
CustomLog logs/access_log combined
2)错误日志
用于记录Apache在启动和运行时产生的错误,默认为error_log,可以通过参数ErrorLog进行设置:
ErrorLog logs/error_log
ErrorLog logs/error_log
1. 日志滚动
1)Rotatelogs
#vi /usr/local/apache/bin/httpd.conf
将 CustomLog logs/access_log combined
改为 CustomLog “|/usr/sbin/rotatelogs logs/access_log 172800” combined
其中,172800单位为秒,即两天。滚动后的日志文件命名为/usr/local/apache/httpd/logs/access_logxxxxxxxxxx。10个x表示的是开始记录日志时的时间距1970年1月1日的秒数。日志每滚一次产生一个新文件,后缀值为前一个日志文件的后缀值加上172800。
2)Logrotate
系统提供了一个日志滚动工具Logrotate,与Crond配合可实现Apache日志滚动。
#vi /etc/logrotate.conf //查看logrotate.conf文件
在logrotate.conf文件中包含了/etc/logrotate.d目录,在该目录下,可查看httpd文件,内容如下:
#vi /etc/logrotate.d/httpd
Missingok表示如果日志文件丢失则重新生成新的日志文件。Notifempty表示如果日志文件中没有数据,则不滚动。Sharedscripts表示调用日志滚动函数。Postrotate表示日志滚动后,将重启Apache。
在/etc/cron.daily/文件夹下查看logrotate文件,内容如下:
由此看出,Logrotate工具由Crond每天运行一次从而实现日志滚动。
2. Webalizer日志统计分析工具
1)安装Webalizer
2)配置webalizer工具
(1) # vi /etc/webalizer.conf
修改以下行:
LogFile /usr/local/apache/logs/access_log
用来指示配置文件的路径信息,webalizer会将该日志文件作为输入进行统计分析;
OutputDir /usr/local/apache/htdocs/usage
用来指示生成的统计报表的保存目录。
(2) # vi /etc/httpd/conf.d/webalizer.conf
(2) # vi /etc/httpd/conf.d/webalizer.conf
# cp /etc/httpd/conf.d/webalizer.conf /etc/httpd/conf/webalizer.conf
(3) # crontab –e
添加以下行:
23 0 * * * ./usr/bin/webalizer -c /etc/webalizer.conf
//按wq保存退出,该行表示每天23点进行当天的数据流量统计。
(4) # /usr/local/apachectl –k stop //重启apache
# /usr/local/apachectl –k start
(5) # /usr/local/bin/webalizer -c /etc/webalizer.conf
3)测试
输入地址http://127.0.0.1/usage测试,如下:
五、配置PHP运行环境
为了让PHP支持GD库,我们需要先安装zlib, libpng, freetype,jpeg,GD等组件。
1. 安装zlib
1. 安装zlib
下载地址:http://www.zlib.net/zlib-1.2.3.tar.gz
# tar zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
2. 安装libpng
# tar zxvf libpng-1.2.18.tar.tar
# cd libpng-1.2.18
# cd scripts/
# mv makefile.linux ../makefile
# cd ..
# make
# make install
注意,这里的makefile不是用./configure生成,而是直接从scripts/里拷一个
# cd libpng-1.2.18
# cd scripts/
# mv makefile.linux ../makefile
# cd ..
# make
# make install
注意,这里的makefile不是用./configure生成,而是直接从scripts/里拷一个
3. 安装freetype
# tar zxvf freetype-2.3.9 .tar.gz
# cd freetype-2.3.9
# ./configure --prefix=/usr/local/freetype
# make
# make install
# cd freetype-2.3.9
# ./configure --prefix=/usr/local/freetype
# make
# make install
4. 安装Jpeg
下载地址:http://www.ijg.org/files/jpegsrc.v6b.tar.gz
# tar zxvf jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# mkdir /usr/local/libjpeg
# mkdir /usr/local/libjpeg/include
# mkdir /usr/local/libjpeg/bin
# mkdir /usr/local/libjpeg/lib
# mkdir /usr/local/libjpeg/man
# mkdir /usr/local/libjpeg
# mkdir /usr/local/libjpeg/include
# mkdir /usr/local/libjpeg/bin
# mkdir /usr/local/libjpeg/lib
# mkdir /usr/local/libjpeg/man
# mkdir /usr/local/libjpeg/man/man1
# ./configure --prefix=/usr/local/libjpeg --enable-shared --enable-static
# make
# make
# make install
注意,这里configure一定要带--enable-shared参数,不然,不会生成共享库
注意,这里configure一定要带--enable-shared参数,不然,不会生成共享库
5. 安装GD
下载地址:http://www.libgd.org/Downloads
# tar zxvf gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure --prefix=/usr/local/libgd --with-png --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/libjpeg
# cd gd-2.0.35
# ./configure --prefix=/usr/local/libgd --with-png --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/libjpeg
# make
# make install
# make install
6. 编辑/etc/ld.so.conf,添加以下几行到此文件中。
/usr/local/zlib/lib
/usr/local/freetype/lib
/usr/local/libjpeg/lib
/usr/local/libgd/lib
执行ldconfig命令,
#ldconfig
使用动态装入器装载找到共享库
7. 安装libxml
下载地址:ftp://xmlsoft.org/libxml2/libxml2-2.6.32.tar.gz
# tar zxvf libxml2-2.6.32.tar.gz
# cd libxml2-2.6.32
# tar zxvf libxml2-2.6.32.tar.gz
# cd libxml2-2.6.32
# ./configure
# make
# make install
# make
# make install
8. 安装PHP
PHP下载地址:http://www.php.net/downloads.php
# tar zxvf php-5.2.9.tar.gz
# cd php-5.2.9
#
./configure --prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql
--with-gd=/usr/local/libgd --enable-gd-native-ttf --with-ttf
--enable-gd-jis-conv --with-freetype-dir=/usr/local/freetype
--with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr
--with-zlib-dir=/usr/local/zlib --enable-xml --enable-mbstring --enable-sockets
# cd php-5.2.9
#
./configure --prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql
--with-gd=/usr/local/libgd --enable-gd-native-ttf --with-ttf
--enable-gd-jis-conv --with-freetype-dir=/usr/local/freetype
--with-jpeg-dir=/usr/local/libjpeg --with-png-dir=/usr
--with-zlib-dir=/usr/local/zlib --enable-xml --enable-mbstring --enable-sockets
# make
# make install
# cp php.ini-recommended /usr/local/php/lib/php.ini
# ln –s /usr/local/php/bin/* /usr/local/bin/
9. 配置Apache
# vi /usr/local/apache/conf/httpd.conf
查找AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在其下加入 AddType application/x-tar .tgz
AddType application/x-httpd-php .php
AddType image/x-icon .ico
修改DirectoryIndex 行,添加index.php
修改为DirectoryIndex index.php index.html
10. 测试
# vi /usr/local/apache/htdocs/test.php
添加以下行:
<?php
Phpinfo();
?>
# /usr/local/apache/bin/apachectl –k stop
#/usr/local/apache/bin/apachectl –k start
在浏览器中输入:http://192.168.99.9/test.php进行测试。
OK,至此Apache的相关部署就已经讲完了。下一篇中,我们将讲解MySQL部署的相关内容,敬请关注。
本文出自 “Tonyguo De博客【知识..” 博客,请务必保留此出处http://tonyguo.blog.51cto.com/379574/168537