apache源码安装笔记
2013-08-14 00:21
239 查看
工作中依赖比较多的中间件之一便是apache,但是开发机有限,没有机会随便折腾apache,于是便在自己的电脑折腾一下,补充 一下这块知识。
到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错误。
将路径统一一下
重启apache,bin/apachectrl restart
再刷新页面,it work!
再进阶一点,http.conf中默认的配置是不支持多host的,所以,我把http.conf中的host默认配置都注释了,并将配置中的
的Include前的注释符去掉,使用conf/extra/httpd-vhost.conf来配置vhost,支持多个vhost。修改后,重启apache,再刷新页面,it work!
到这里,安装就算是基本完成了。
其他的配置问题将专门独立章节介绍。
CustomLog 这个就是咱们经常查看的apache access日志选项,修改一下,让日志更加易读,更有价值。
其中%I和%O需要启用mpm_mod_logio模块,这个模块的启用,需要先到modules/loggers目录中编译mod_logio.c
未完待续。
洗澡睡觉
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
未完待续。
洗澡睡觉
相关文章推荐
- Linux笔记(58)——详解apache源码包安装
- linux笔记—-Apache源码安装
- apache源码安装笔记0815
- centos 学习笔记——源码编译安装apache
- Apache源码包安装和子配置文件介绍--update.2014-12-5
- Ubuntu 下快速部署安装 Apache + PHP + MySQL + phpMyAdmin 笔记
- centos 6.2 源码安装 apache-2.2.21
- 源码安装 linux apache 集成 subversion 初探
- centos7.2源码安装Apache2.4
- linux 下源码方式安装 apache
- ATS源码目录结构(Apache Traffic Server 学习笔记 3)
- PHP自学笔记1——安装(整合Apache)
- apache+mysql+php 源码安装
- centos5 源码安装Nginx + mysql + apache + php的方法
- 【Python笔记】图片处理库PIL的源码安装步骤
- ubuntu下apache+mysql+php安装笔记
- 源码和手动安装apache及存放路径
- CentOS下源码手动安装Apache以及配置
- linux下源码包安装apache
- centos6.6 源码安装Apache2.4