以下是在 Linux 上通过 Yum 安装 Apache 的简要步骤。
# Apache2.0 以上的版本就叫 httpd
rpm -qa|grep httpd
如果没有安装,则不会显示任何内容。
如果已安装,会显示出已安装的 Apache 版本,如下:
如果需要重新安装,先使用 yum remove 命令来卸载Apache软件包。
sudo yum remove httpd
如果安装时有依赖项安装,在卸载时,yum 也会显示要删除的依赖项,并要求确认。
执行卸载后,检查是否卸载成功
rpm -qa|grep httpd
发现 httpd-tools-2.4.6-99.el7.centos.1.x86_64 没有卸载掉,可能有以下几个原因:
如果确实需要卸载,可尝试手动移除。
sudo yum remove httpd-tools
另外如果希望彻底删除 Apache 的配置文件和数据,可以手动删除文件。但要谨慎操作,确保备份重要数据。
# 删除 Apache 的配置文件目录
sudo rm -rf /etc/httpd
# 删除 Apache 默认的网站文件目录
sudo rm -rf /var/www/html
上述命令中的路径 /etc/httpd 和 /var/www/html 是默认安装时的目录,如果自定义了安装路径,则应调整路径。
最后清理 yum 缓存以释放磁盘空间,这会删除所有缓存的包,以便重新下载或释放空间。
sudo yum clean all
yum install httpd -y
出现 Complete 表示安装成功
systemctl start httpd
Apache 默认使用 80 端口,如果启动时 80 端口已被占用,会报错。
先查出哪个程序占用了 80 端口
netstat -tulnp | grep 80
返回如下内容
发现是 nginx 占用了,如果确认 nginx 不需要,则将 nginx 服务关闭。
systemctl stop nginx
再次启动 Apache 成功。
systemctl status httpd
active (running) 表示启动成功
这时候如果重启服务器,再查看 Apache 的状态,发现不是运行状态:Active: inactive (dead)
这是因为没有设置 Apache 开机启动。
# 亲测有效
systemctl enable httpd
执行命令后,会自动关联开机启动设置
Apache 默认 80 端口,若需要外部访问,需要将 80 端口向外开放。
如果是云服务器,可在云服务器的 “安全组” 中开放端口。
如果是本地 Linux 系统,可通过以下命令开发端口。
firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙使端口设置生效
systemctl restart firewalld
通过浏览器访问,能够显示出如下页面,表示 Apache 部署成功。这是 Apache 默认的初始页面。
Apache 默认的网站文件目录是:/var/www/html
在默认的网站文件目录中导入要显示的网站页面
对压缩文件进行解压后,得到 index.html 文件,就能使用 IP 在浏览器上访问了。
# 检查是否安装 Apache
rpm -qa|grep httpd
# 安装 Apache
yum install httpd -y
# 启动 Apache
systemctl start httpd
# 重启 Apache
systemctl restart httpd
# 停止 Apache
systemctl stop httpd
# 查看 Apache 状态
systemctl status httpd
# 设置开机启动(亲测有效)
systemctl enable httpd
# 查看 80 端口的使用情况
netstat -tulnp | grep 80
# 关闭使用 80 端口的服务
systemctl stop nginx
# 设置防火墙(端口)
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重启防火墙使生效
systemctl restart firewalld
# 卸载 Apache
sudo yum remove httpd
# 卸载指定依赖
sudo yum remove httpd-tools
# 删除 Apache 的配置文件目录
sudo rm -rf /etc/httpd
# 删除 Apache 默认的网站文件目录
sudo rm -rf /var/www/html
# 清理 yum 缓存
sudo yum clean all