创建apache2目录
mkdir –p /usr/local/apache2
解压apache源码包到apache2目录,编译apache:
./configure --prefix=/usr/local/apache2/ --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre
1.Make 编译服务器程序
2.Make install 安装服务器程序
3./usr/local/apache2/bin/apachectl start 启动httpd服务
4./usr/local/apache2/bin/apachectl -t 语法检测
更改httpd启动方式-配置成系统服务:
1.将http脚本复制到/etc/init.d这个目录下:
# cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
# cp /usr/local/apache2/bin/apachectl /usr/local/bin/httpd
# ln -s /etc/init.d/httpd /etc/rc.d/rc5.d/S61httpd
# ln -s /etc/init.d/httpd /etc/rc.d/rc4.d/S61httpd
# ln -s /etc/init.d/httpd /etc/rc.d/rc3.d/S61httpd
注:/etc/rc.d/rc3.d~rc5.d里面的文件是/etc/init.d里面的快捷方式,删除/etc/init.d目录下面的文件等于删除rc3.d~rc5.d的快捷方式
2.vi httpd
#chkconfig: 345 61 61
#description: apache
3.添加httpd到启动项:
chkconfig --add httpd
4.查看是否有httpd服务:
chkconfig --list httpd
注意:/etc/init.d/httpd start 和 service httpd start区别
service 命令是system-v体系中的一个功能,其实也是一个脚本,你可以查看/sbin/service,里面定义了目标目录:SERVICEDIR="/etc/init.d"
也就是说,你执行service httpd start 的时候,和执行/etc/init.d/httpd start 是一样的,它只是个快捷方式而已。
源码安装后Apache服务器的根目录:
/usr/local/apache2/
日志文件:
/usr/local/apache2/logs/
httpd主配置文件:
/usr/local/apache2/conf/httpd.conf
http服务器网页根目录:
/usr/local/apache2/htdocs/
创建虚拟WEB主机:
cd /usr/local/apache2/htdocs/ 创建虚拟目录benetcom
mkdir benetcom
cd benetcom
cp /usr/local/apache2/htdocs/index.html ./ 创建测试网页
Vi index.html
cd /usr/local/apache2/conf/ 增加虚拟主机配置
Vi httpd.conf
:r extra/httpd-vhosts.conf
80>
# ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/usr/local/apache2/docs/benetcom"
ServerName www.benet.com
# ServerAlias www.dummy-host.example.com
ErrorLog "logs/benet.com-error_log"
CustomLog "logs/benet.com-access_log" common
用RPM包安装后的Apache配置文件具体位置:
/etc/httpd/Apache 服务程序根目录
/etc/httpd/conf/httpd.conf 主配置文件
/var/www/html 网页文档默认根目录
/var/log/httpd/error_log 错误日志文件
/var/log/httpd/access_log 访问日志文件
本文转自 boy461205160 51CTO博客,原文链接:http://blog.51cto.com/461205160/1731041