一、编译安装apache
1、解决依赖关系
httpd-2.4.4需要较新版本的apr和apr-util,因此需要事先对其进行升级。
升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包(谨慎!小心)。下面是使用源代码的方式行,它们的下载路径为:(~_~)这里不再说到那里下载了,相信你有能力找的到的,呵呵
2、安装依赖的软件包(当然这里可以认为成需要的编译环境咯!)
yum-yinstallpcre-devel
yum-yinstall"DevelopmentLibraries"(这个东西可能系统已经有了,不过要小心一点,最好试一下看看是否安装了)
3、一切准备好了那就开始安装吧!!
(1)编译安装apr tarxfapr-1.4.6.tar.bz2 cdapr-1.4.6 ./configure--prefix=/usr/local/apr make&&makeinstall (2)编译安装apr-util tarxfapr-util-1.5.2.tar.bz2 cdapr-util-1.5.2 ./configure--prefix=/usr/local/apr-util--with-apr=/usr/local/apr make&&makeinstall (3)编译安装httpd-2.4.4 tarxfhttpd-2.4.4.tar.bz2 cdhttpd-2.4.4 ./configure--prefix=/usr/local/apache--sysconfdir=/etc/httpd--enable-so--enable-ssl--enable-cgi--enable-rewrite--with-zlib--with-pcre--with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util--enable-modules=most--enable-mods-shared=most--enable-mpms-shared=most--with-mpm=event make&&makeinstall |
二、测试
1、启动apache时注意问题:
启动前需要注意,应该先进行SELinux关闭,如果没有关闭的话apache可能不能正常的工作,好有一点就是关于iptables(防火墙)的问题,建议测试阶段先进行关闭。
2、启动apache服务:
#setenforce0 #serviceiptablesstop #/usr/local/apache/bin/apachectlstart |
打开浏览器输入本机ip看是否有页面刷新出来,并显示
Itworks!
那么apache服务可以简单的工作了!
要想有更多的功能那只能修改httpd.conf这个配置文件啦!!(这里就先不介绍了)
三、一些关于apache文件目录的问题
1、用RPM安装后的Apache配置文件具体位置:
/etc/httpd/--------------------------Apache服务程序根目录
/etc/httpd/conf/httpd.conf---------主配置文件
/var/www/html---------------------网页文档默认根目录
/var/log/httpd/error_log----------错误日志文件
/var/log/httpd/access_log--------访问日志文件
2、源码安装的目录文件(因为编译是文件目录不定所以就简单的写一下了):
主配置文件----------------------编译时自己指定的目录--prefix=配置文件的路径
默认网页目录-------------------安装apache目录下的htdocs目录
日志文件位置-------------------安装apache目录下的logs目录
apache服务程序的目录----------安装apache目录下的bin目录
四、常见错误
#1# /usr/local/apache/bin/httpd:symbollookuperror:/usr/local/apache/bin/httpd:undefinedsymbol:apr_pool_pre_cleanup_register 原因:未找到正确的apr,apr-util路径 解决:要重新安装apr,apr-util,并且写出正确文件路径。 --with-apr=/usr/local/bin/apr-1-config\ --with-apr-util=/usr/local/apr/bin/apu-1-config #2# httpd:apr_sockaddr_info_get()failedforredhat httpd:Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,using127.0.0.1forServerName |
原因:httpd.conf配置文件中ServerName与主机不一致导致
解决:修改配置httpd.conf文件中#ServerName即可
#3# httpd:Syntaxerroronline142of/usr/local/apache/conf/httpd.conf:Cannotloadmodules/mod_dir.sointoserver:/usr/local/apache/modules/mod_dir.so:undefinedsymbol:apr_array_clear |
原因:不能加载mod_dir.so模块(具体不详)
解决:方式如下
tar-zxvfapr-1.4.6.tar.gz tar-zxvfapr-util-1.5.2.tar.gz mv./apr-1.4.6/usr/local/src/apache/srclib/apr mv./apr-util-1.5.2/usr/local/src/srclib/apr-util ./configure时,后面添加 --with-included-apr\ --with-pcre=/usr/local/bin/pcre-config |