小爸爸 发表于 2017-6-2 15:19:33

linux安装apache的纠结过程

本以为linux下安装apache是件很简单的过程。三命令就可以搞定,jxvf解压,make 编译,make install 安装就OK了。没想到这个过程还颇费周折。可能和环境有关吧。先说一下我的环境。
--------------------------
linux :    cenos5.5(验证4.8也会碰到以下问题)
apache:  httpd-2.4.1.tar.bz2
--------------------------
# tar jxvf httpd-2.4.1.tar.bz2  //解压apache的压缩包
# cd httpd-2.4.1     //定位到httpd-2.4.1 文件夹下
# ls       //查看显示httpd-2.4.1 文件夹下内容
#./configure --help | more      //查看安装apache配置参数
#./configure--prefix=/usr/local/apache--enable-so      //配置apache路径 ,后面跟 --enable-so 参数表示让apache核心装载DSO
# make   //编译apache
出错了!提示:
configure: error: APR not found. Please read the documentation
在apache官网上可以下载到 apr-1.4.6.tar.gz
解决apr not found问题>>>>
APR和APR-UTIL的下载地址:http://apr.apache.org/download.cgi
   # tar -zxf apr-1.4.6.tar.gz
   # cd apr-1.4.6
   # ./configure --prefix=/usr/local/apr
   # make
   # make install
安装完成后,再来编译apache
# make
又出错了!提示:
configure: error: APR-util not found. Please read the documentation
好吧!还是上面的apache官网地址再下载 apr-util-1.4.1.tar.gz
解决APR-util not found问题>>>>
   # tar -zxfapr-util-1.4.1.tar.gz
#cdapr-util-1.4.1
   # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
# make
# make install

再来编译apache ,再次出错!提示:

configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/ , 我X !linux 安装软件之间关联性有时能让人崩溃。
../configure仍提示APR-util not found,增加--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util后出现>>>>>
# ./configure –help | grep pcre
--with-pcre=PATH      Use external PCRE library
下载地址:http://ftp.exim.llorien.org/pcre/
下载pcre-8.30.zip ,列表文件较多,一般浏览器会有搜索功能,你可ctrl+f 搜索定位后下载。
#unzip -o pcre-8.30.zip
#cd pcre-8.30
#./configure --prefix=/usr/local/pcre
#make
#make install

编译Apache

# ./configure --prefix=/usr/local/apache2--with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util/   
  注意,这里后面跟的参数,一定要与前面安装apr 和apr-util的路径一致。
# make
# make install
这次编译安装应该不会再报任何错误了。哈哈!!

启动apache

# pwd
/usr/local/apache/bin
# apachectl stop停止
# apachectl start启动
查看80端口是否被占用
#netstat -an | grep :80   

查看apache 启动服务是否启动

# ps -aux | grep httpd
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
root      28660.01.2251649556 ?      Ss   22:45   0:00 /usr/sbin/httpd -k start
apache    28670.00.7253005556 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28680.00.6253005444 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28690.00.6253005444 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28700.00.7253005556 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28710.00.6251644796 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28720.00.6251644796 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28730.00.6251644796 ?      S    22:45   0:00 /usr/sbin/httpd -k start
apache    28740.00.6251644796 ?      S    22:45   0:00 /usr/sbin/httpd -k start
root      31410.00.0   4244   676 pts/1    R+   22:48   0:00 grep httpd
下面访问一下apache默认页是否能打开。http://ip:80/index.html
又提示了错误:
http://pic002.cnblogs.com/images/2012/311516/2012083000320288.png
  难道是端口被占用了?修改apache的配置文件
/usr/local/apache/conf/httpd.conf配置文件
vi httpd.conf
找到下面一行:
Listen 80   把80改成其它端口,如8080 、8800 只要没被占用就行。
找到下面一行:
ServerName www.example.com:80   改成本机ip加端口号,如:192.168.0.105:80
  端口改来改去,一直都报那个错误。由于之前没有在linux下安装apache的经验,与是想找一下apache默认运行的哪个页面。于是,找到了,..../apache/htdocs/index.html 文件(受tomcat的误导)!其实不然,真正运行的是 /var/www/html 目录下的文件
You don't have permission to access /index.html on this server
真正的错误在这句提示上。因为我方位的文件权限不足够。那给文件加个权限吧!
在/var/www/html 创建个文件index.html
# chmod 766 index.html
Ok!再来方位apache ,页面正常打开了!过程很纠结,结局很美好!
-----------小结--------------
需要安装的文件:
apr-1.4.6
apr-util-1.4.1.tar.bz2
pcre-8.30.zip
/usr/local/apache     apache的安装目录
/usr/local/apache/conf/httpd.conf    配置文件
/usr/local/apache/bin/ apachectl   stop/start  停止/启动程序
/var/www/html/    在这个文件夹下创建可以访问的页面

测试就是来开荒 发表于 2017-6-2 15:31:30

直接解压之后,配置一下环境变量就好了 那有这么麻烦

测试的味道 发表于 2017-6-2 15:32:23

       
我在ubuntu下装过apache,其实apt-get 有的时候并不好用,举例来说,libpcre 和libpcre-dev是有区别的,apt-get install libpcre 是没啥用的 蛋疼啊!!!

小皮球的故事 发表于 2017-6-2 15:33:03

       
其他组件缺的话,用yum安装不是快捷多了吗?
何必都用源程序编译

Miss_love 发表于 2017-6-2 15:52:55

有折腾收获更多

神仙也考试 发表于 2017-6-2 15:55:34

centos:yum install httpd -y

一键安装Apache:lol

梦想家 发表于 2017-6-2 16:10:07

:L

清晨一缕阳光 发表于 2017-6-2 17:09:29

人生在于折腾!
页: [1]
查看完整版本: linux安装apache的纠结过程