您的位置:首页 > 运维架构 > Apache

apache源码安装笔记

2013-08-14 00:21 239 查看
工作中依赖比较多的中间件之一便是apache,但是开发机有限,没有机会随便折腾apache,于是便在自己的电脑折腾一下,补充 一下这块知识。

1.安装apache

Apache的安装方式有源码安装和二进制安装包安装,因为工作环境的关系,我选择的linux下源码安装,选择在linux出了兴趣使然外,在一个就是与工作贴近。

http://httpd.apache.org/download.cgi下载源码包,我下载的是2.2.4版本,在windows环境上下载,这个是有点偷懒。
rz到linux机器上。我一开始使用了官网的putty,不支持sz/rz,后来换成工作中一直在用的SecureCRT终端,搞定(这些过程需要用root用户来执行)。
tar zxvf httpd-2.2.4.tar.gz
创建一个软链接,在/usr/local中加apache目录的入口,ln -s ${path}/httpd-2.2.4
/usr/local/apache2
cd httpd-2.2.4
./configure --prefix=/usr/local/apache2
--enable-so

make
make install
make clean
cd bin
./apachectrl start

这时,apache已安装好并启动了。你可以在浏览器上直接访问apache机器的ip,这个时候,如果你看到了样例的目录页面,那么恭喜你,你已经完成安装了。可惜我却遇到了403错误,Google一下,发现是因为http.conf中配的DocumentRoot路径与directory节点中的路径不符,导致权限不足,造成403错误。

DocumentRoot "/usr/local/apache2/htdocs"
<Directory  />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>


将路径统一一下
DocumentRoot "/usr/local/apache2/htdocs
<Directory  "/usr/local/apache2/htdocs">
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>


重启apache,bin/apachectrl restart

再刷新页面,it work!

再进阶一点,http.conf中默认的配置是不支持多host的,所以,我把http.conf中的host默认配置都注释了,并将配置中的
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf

的Include前的注释符去掉,使用conf/extra/httpd-vhost.conf来配置vhost,支持多个vhost。修改后,重启apache,再刷新页面,it work!
到这里,安装就算是基本完成了。
其他的配置问题将专门独立章节介绍。

2.完善配置

安装阶段让apache支持多个vhost了,这里就先来折腾一下vhost中的配置。
CustomLog 这个就是咱们经常查看的apache access日志选项,修改一下,让日志更加易读,更有价值。

CustomLog "logs/dummy-host.example.com-access_log" "%{%Y-%m-%d %H:%M:%S}t|%a|%A|%P|%D|%s|%U|%I|%O|%H"
这个日志规范是时间|来源主机IP|本机IP|进程号|消耗的时间|http状态码|请求的URL路径|接收的字节数|发送的字节数|使用的协议
其中%I和%O需要启用mpm_mod_logio模块,这个模块的启用,需要先到modules/loggers目录中编译mod_logio.c
/usr/local/apache2/bin/apxs -c mod_logio.c
/usr/local/apache2/bin/apxs -i -a -n  mpm_logio  mod_logio.la
在conf/extra/http-vhost.conf的vhost中增加
LoadModule logio_module   modules/mod_logio.so
然后使用以下命令来测试配置修改是否正确
/usr/local/apache2/bin/apachectl configtest
正常的话,重启apache,即可看到规范后的日志输出
2013-08-13 23:22:36|192.168.148.1|192.168.148.128|24986|2788|404|/favicon.ico|273|423|HTTP/1.1


未完待续。
洗澡睡觉
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: