分享生活,记录成长
表达自我,拥抱世界

Apache服务安装与配置

一、安装apache(yum源安装)

查看软件是否已安装

[root@krist www]# rpm -qa |grep httpd

若没有安装,配置好yum源后,直接用yum install httpd安装即可

[root@krist www]# yum install -y httpd

安装完成,命令 rpm -qa |grep httpd 查看是否安装成功

[root@krist www]# rpm -qa |grep httpd
httpd-2.4.6-93.el7.centos.x86_64
httpd-tools-2.4.6-93.el7.centos.x86_64

然后用以下命令启动

[root@krist www]# systemctl start httpd

也可将服务加入到开机启动项

[root@krist www]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@krist www]# chkconfig httpd on

接下来就可以通过浏览器输入服务器ip地址访问apache测试页,并部署web服务。

查看apache配置文件,more /etc/httpd/conf/httpd.conf ,以下命令可以去除注释行和空行并将其重定向输入到一个文件中。

[root@krist www]# sed '/^#/d;/^$/d;/#/c \' apache.conf | cat -n > 2apache.conf

二、卸载apache已安装的软件包

查看系统中已安装的所有apache软件包列表

[root@krist www]# rpm -qa |grep httpd
httpd-2.4.6-93.el7.centos.x86_64
httpd-tools-2.4.6-93.el7.centos.x86_64

使用 rpm -e --nodeps httpd 命令卸载,--nodeps是指卸载软件时忽略依赖关系,卸载时写软件包名即可。注:从下往上一个一个卸载。

[root@krist ~]# rpm -e --nodeps httpd-tools
[root@krist ~]# rpm -qa |grep httpd
httpd-2.4.6-93.el7.centos.x86_64
[root@krist ~]# rpm -e --nodeps httpd
[root@krist ~]# rpm -qa |grep httpd
[root@krist ~]# 

三、源码软件包安装Apache

Apache一般依赖3个组件:apr、apr-util、pcre,确保它们都被安装,如果已安装,千万不要随意卸载。

[root@krist www]# rpm -qa |grep apr
apr-util-1.5.2-6.el7.x86_64
apr-1.4.8-5.el7.x86_64
[root@krist www]# rpm -qa |grep pcre
pcre-8.32-17.el7.x86_64
[root@krist www]# 

Apache HTTP Server下载地址:http://httpd.apache.org/download.cgi#apache24
可以用wget命令下载:
wget https://mirrors.bfsu.edu.cn/apache//httpd/httpd-2.4.46.tar.gz

APR和APR-Util下载地址:http://apr.apache.org/download.cgi
可以用wget命令下载:
wget https://mirrors.bfsu.edu.cn/apache//apr/apr-1.7.0.tar.gz
wget https://mirrors.bfsu.edu.cn/apache//apr/apr-util-1.6.1.tar.gz

PCRE下载地址:https://ftp.pcre.org/pub/pcre/
可以用wget命令下载:
wget https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz

#安装编译环境依赖包(一定要安装gcc/gcc-c++ 可以用[root@localhost ~]#gcc –v查询是否安装)

[root@Krist www]#yum install –y gcc gcc-c++ make expat-devel openssl-devel pcre pcre-devel libxm12-devel

安装apr

[root@kris www]# tar zxf apr-1.7.0.tar.gz
[root@krist www]# cd apr-1.7.0/
[root@krist apr-1.7.0]# ./configure --prefix=/usr/local/apr
[root@krist apr-1.7.0]# make && make install

安装apr-util

[root@krist www]# tar zxf apr-util-1.6.1.tar.gz 
[root@krist www]# cd apr-util-1.6.1/
[root@krist apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
[root@krist apr-util-1.6.1]# make && make install

如果编译中遇到如下故障,安装expat库即可

xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
 #include <expat.h>
[root@krist apr-util-1.6.1]# yum install -y expat-devel

安装pcre

[root@krist www]# tar zxf pcre-8.44.tar.gz
[root@krist www]# cd pcre-8.44/
[root@krist pcre-8.44]# ./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config
[root@krist pcre-8.44]# make && make install

安装Apache

[root@krist www]# ls httpd-2.4.46.tar.gz 
httpd-2.4.46.tar.gz
[root@krist www]# tar zxvf httpd-2.4.46.tar.gz
[root@krist www]# cd httpd-2.4.46/
[root@krist httpd-2.4.46]# ./configure --prefix=/usr/local/httpd --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so --enable-rewrite
[root@krist httpd-2.4.46]# make && make install

如果编译时出现以下错误:

collect2: error: ld returned 1 exit status
make[2]: *** [htpasswd] Error 1
make[2]: Leaving directory `/www/httpdir/httpd-2.4.46/support'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/www/httpdir/httpd-2.4.46/support'
make: *** [all-recursive] Error 1

解决方法,再安装一遍上述的三个依赖环境,apr、apr-util、pcre

安装完成后,进入到 /usr/local/httpd/conf 目录,将配置文件httpd.conf备份,然后找到 #ServerName 这一行,在下一行插入 ServerName ipaddress:80 。

[root@krist conf]# cp httpd.conf httpd.conf.bak
[root@krist conf]# grep -A 1 "`sed -n '/^#ServerName/p' httpd.conf`" httpd.conf
#ServerName www.example.com:80
ServerName 192.168.123.188:80

启动Apache服务并通过浏览器访问,注意关闭防火墙。

[root@krist /]# ./usr/local/httpd/bin/apachectl start
[root@krist /]# systemctl stop firewalld

image-20200826010729179

误删pcre和apr解决方法:

解决问题的思路就是把pcre安装包重新安装上,这时候如果你可以使用rz命令可以把其它服务器下载一个libpcre库文件,并且传到/usr/lib64目录下面,然后执行ldconfig,最后把pcre-8.32-17.el7.x86_64安装上去问题解决。
但问题总不会那么顺利,所以需要下面的操作:
重启服务器,并使用光盘启动,进入系统修复状态:
1、选择“Troubleshooting”

2、选择“Rescue a CentOS system”

3、输入“1”选择Continue

4、输入”returen” 后进入shell命令行

5、 “ls /mnt/” 查看到当前系统盘被挂载在 “/mnt/sysimage” ,要对里面的动态库进行添加

6、将光驱内的库文件复制到硬盘中

sh-4.2# cp /usr/lib64/libpcre.so.1.2.0 /mnt/sysimae/usr/lib64
sh-4.2# chroot /mnt/sysimage/
bash-4.2#

7、挂载光驱,重新安装pcre

bash-4.2# ldconfig
bash-4.2# mkdir /mnt/cdrom
bash-4.2# mount /dev/cdrom /mnt/cdrom/
bash-4.2# rpm -ivh /mnt/cdrom/Packages/pcre-***
bash-4.2# rpm -ivh /mnt/cdrom/Packages/apr-***
bash-4.2# exit
sh-4.2# reboot
[root@krist www]# rpm -qa | grep -e apr -e pcre  //重启后可以看到软件安装成功
pcre-8.32-17.el7.x86_64
apr-util-1.5.2-6.el7.x86_64
apr-1.4.8-5.el7.x86_64

参考:

https://blog.csdn.net/chenxiaqin/article/details/105483153

https://www.cnblogs.com/xusweeter/p/9934072.html

https://www.cnblogs.com/mywanna/p/11301736.html

将Apache服务添加到系统服务中

一、进入 /etc/init.d/ 目录中,创建并编辑如下脚本httpd。

[root@krist init.d]# more httpd 
#!/bin/bash
#chkconfig:345 85 15
#description:Start and stopthe Apache HTTP Server

function httpd_start(){
/usr/local/httpd/bin/apachectl start
}

function httpd_stop(){
/usr/local/httpd/bin/apachectl stop
}

case $1 in
        'start')
                httpd_start
        ;;
        'stop')
                httpd_stop
        ;;
        'restart')
                httpd_stop
                httpd_start
        ;;
        *)
                echo "Usage: httpd start|stop|restart1"
        ;;
esac

注意:
#chkconfig:345 85 15
#description:Start and stop the Apache HTTP Server
这两行必须写,不然chkconfig不识别

二、给脚本加上权限

[root@krist init.d]# chmod u+x httpd 

三、使用系统服务来启动

[root@krist init.d]# chkconfig --add httpd //可以让service httpd start 来启动
[root@krist init.d]# systemctl daemon-reload //可以让systemctl start httpd来启动

参考:https://blog.csdn.net/yy150122/article/details/107520824

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

未经允许不得转载:DDblog » Apache服务安装与配置

分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

立即登录   注册

DD博客

联系我们每天好心情
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活