虽然本人接触最多的服务器软件是nginx,但是作为老大哥的apache依旧是不可轻视的一个软件,而且在这个世界上还有服务器的软件都依赖apache的环境,于是乎,安装apache是一个运维工程师的基本功。
Apache的安装
去Apache的官方网站上下载安装文件,然后"拆包解压+./configure",但是可能会在./configure这步会提示“configure: error: APR not found . Please read the documentation"。
于是就要返回Apache网站再下载三个组件----apr、apr-util和pcre,下载命令分别是:
1
2
3
4
5
wget mirrors.cnnic.cn/apache//apr/apr-1.5.2.tar.gz
wget mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.gz
wget http://jaist.dl.sourceforge.net/ ... /8.10/pcre-8.10.zip
#都wget之后,执行下一步
yum remove apr-util-devel apr apr-util-mysql apr-docs apr-devel apr-util apr-util-docs
先安装apr:
1
2
3
4
[iyunv@localhost shuo]# tar -zxf apr-1.5.2.tar.gz
[iyunv@localhost shuo]# cd apr-1.5.2
[iyunv@localhost apr-1.4.5]# ./configure --prefix=/usr/local/apr
[iyunv@localhost apr-1.4.5]# make && make install
再安装apr-util:
1
2
3
4
5
6
[iyunv@localhost shuo]# tar -zxf apr-util-1.5.4.tar.gz
[iyunv@localhost shuo]# cd apr-util-1.5.4
[iyunv@localhost apr-util-1.3.12]# ./configure --prefix=/usr/local/apr-util -with-apr=/usr/local/apr/bin/apr-1-config
#用-with-apr来指定apr的路径
[iyunv@localhost apr-util-1.3.12]# make && make install
最后安装pcre:
1
2
3
4
[iyunv@localhost shuo]#unzip -o pcre-8.10.zip
[iyunv@localhost shuo]#cd pcre-8.10
[iyunv@localhost pcre-8.10]#./configure --prefix=/usr/local/pcre
[iyunv@localhost pcre-8.10]#make && make install
返回apache的拆包目录,使用这个一大句命令就可以成功configure了:
./configure --prefix=/usr/local/apache --enable-module=shared --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
Apache的启动、重启和停止
进入apache的文件夹,然后cd到bin文件夹,使用#./apachectl -k start ,就可以启动apache,但是如果出现了如下错误:
这个时候需要到apache的目录里进入到conf文件夹,#vim httpd.conf ,然后使用:/ServerName 查找到ServerName localhost:80这句话,把这句话前面的#去掉,然后保存退出。重新返回bin文件夹下,使用#./apachectl -k start ,这个时候就会看到进程已经启动了。
如果返回到桌面的话,使用浏览器打开http://localhost:80,就会看到“It works!“的字样。
若需要停止apache进程,就#./apachectl -k stop 或者直接"kill -9 +进程号",如果要重启apache就可以#./apachectl -k restart 。
上面说了可以使用kill -9 +pid号,但是这个方法只能kill掉主程序,比较科学的方法应该是#ps -ef |grep apache | grep -v grep | awk '{print $2}'|xargs kill -9 .这个语句跟#./apachectl -k stop 的效果一样。
可以通过#netstat -antp|grep 80 或者#lsof -i :80 这两个语句来看80端口是否被apache进程监听。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com