作者:惜洛妍_311 | 来源:互联网 | 2023-06-03 11:23
注意:这里使用的是CentOS版,RedHat系都可以用。因为用到了yum
一、手动安装
也可以直接看下面2的yum在线安装
1. 准备
有些linux版本中已经预置了有Apache,并且已经是服务了,所有首先检查系统中是否已经存在httpd的服务
# 1. 查看是否有httpd进程正在运行(下图是有的情况)
ps -ef|grep httpd
# 2. 查看linux系统服务中有没有httpd(下图是有的情况)
chkconfig --list
如果有processor或者有service,就执行如下步骤,没有的话可以跳过此步
关闭httpd服务自启动
chkconfig httpd off
停止httpd服务
service httpd stop
#停止后查看进程processor,如果依然有httpd,手动kill掉
ps -ef|grep httpd
kill -9 pid(逐个都删除)
卸载httpd软件
#先检查安装包的名字
rpm -qa|grep httpd
#根据名字删除包
rpm -e httpd-tools-2.4...
删除httpd.conf文件
#先检查文件在哪
find / -name httpd.conf
#查出之后根据路径把它删了
rm /xxx/xxx/httpd.conf
软件下载
1. Apache HTTP Server
地址:http://httpd.apache.org/download.cgi#apache24
2. APR 和 APR-Util
地址:http://apr.apache.org/download.cgi
3. PCRE
地址:https://sourceforge.net/projects/pcre/files/pcre/
2. 安装
1. 如果没有安装gcc/gcc-c++的话必须安装
[root@localhost /]
gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC)
[root@localhost /]
Avaliable Packages
gcc-c++.x86_64
如果结果中没有gcc-c++,或者只有”gcc-c++ Avaliable Packages”没有”gcc-c++ Installed”的话就说明需要安装,安装代码如下:
[root@localhost /]
2. 安装APR、APR-Util、PCRE、Apache Http Server
将这些都安装在/usr/local中,先mkdir目录如下:
[root@localhost soft]
[root@localhost soft]
[root@localhost soft]
[root@localhost soft]
然后步骤如下(直接顺序复制粘贴):
[root@localhost soft]
[root@localhost soft]
[root@localhost soft]
[root@localhost soft]
[root@localhost soft]
[root@localhost apr-1.5.2]
[root@localhost apr-1.5.2]
[root@localhost apr-1.5.2]
[root@localhost apr-1.5.2]
[root@localhost apr-util-1.5.4]
[root@localhost apr-util-1.5.4]
[root@localhost apr-util-1.5.4]
[root@localhost apr-util-1.5.4]
[root@localhost pcre-8.38]
[root@localhost pcre-8.38]
[root@localhost pcre-8.38]
[root@localhost pcre-8.38]
[root@localhost httpd-2.4.18]
[root@localhost httpd-2.4.18]
[root@localhost httpd-2.4.18]
二、yum安装
老简单了
yum list httpd
yum install httpd.x86_64
三、配置、启动Apache
httpd.conf是主配置文件,你可以按需更改,一般来说可能需要自定义端口,那么就vim修改httpd.conf文件的监听端口,改为你希望的
启动、关闭、重启
[root@localhost bin]
[root@localhost bin]
[root@localhost bin]
四、Apache设置为Linux系统服务,并开机启动
将链接apachectl 复制到系统启动目录下并命名为httpd
[root@localhost bin]# cp /usr/local/httpd/bin/apachectl /etc/rc.d/init.d/httpd
到此,其实已经可以使用service httpd start等命令,但在linux服务列表还没有注册
使用chkconfig来注册apache服务,并其可以在linux的服务列表中看到(chkconfig –list)
在init.d的httpd链接文件中第2行添加如下注释,并wq保存退出
[root@localhost bin]
意义如下
35:在3级别和5级别(级别见文末TIPS)启动httpd
61:启动顺序为61号,S61
61:关闭顺序为61号,K61
当进行chkconfig --add httpd操作时,如果没有指定level那么就会来这个注释中取值
将httpd配置自启并加入linux服务监控
[root@localhost bin]# chkconfig --add httpd
此时,就可以在rc.d下的相应的3和5目录下看到S61httpd,并在0、1、2、4、6目录看到K61httpd了
这是2步的手动设置方式,不想看可以跳过。可以手动设置自启动:将链接apachectl放一份软链接到rc3.d目录下(和/或rc*.d目录下)
[root@localhost bin]# ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S61httpd
这样,已经设置了在“有网络多用户命令行模式下”在61顺序自动启动httpd服务了
TIPS:
1. chkconfig有0-6总共7个等级:
0:表示关机
1:单用户模式
2:无网络连接的多用户命令行模式
3:有网络连接的多用户命令行模式
4:不可用
5:带图形界面的多用户模式
6:重新启动