在CentOS系统中卸载Apache可以通过以下步骤实现,具体如下:

通过源码安装的Apache卸载
1、停止Apache服务:

进入之前安装的Apache源码目录,如果安装路径是/usr/local/apache2,则进入该目录。
执行./bin/apachectl stop命令来停止Apache服务(假设使用的是./configure、make、make install方式安装)。
2、删除安装目录:
执行sudo rm rf /usr/local/apache2命令,删除整个安装目录,此操作会永久删除目录及其所有子目录和文件,请确保路径正确无误。
3、清除启动脚本和服务配置:
检查系统是否将Apache配置为启动服务,如果是,使用sudo systemctl disable httpd命令禁用Apache服务。

如果使用的是SysVinit系统,使用sudo chkconfig httpd off命令。
删除启动脚本,对于SysVinit系统,Apache的启动脚本通常位于/etc/init.d/目录下,执行sudo rm f /etc/init.d/httpd命令。
4、清理环境变量:
编辑环境变量文件,如/etc/profile或~/.bashrc,找到并删除与Apache相关的行,例如export PATH=$PATH:/usr/local/apache2/bin。
然后重新加载环境变量,执行source /etc/profile或source ~/.bashrc。
5、确认卸载:
执行httpd v命令,如果命令返回“command not found”,则说明Apache已经成功卸载。
重新启动系统并检查是否有任何Apache相关的进程在运行,执行ps aux | grep httpd,如果没有输出,说明Apache已经彻底卸载。
通过包管理器安装的Apache卸载
1、停止Apache服务:
执行sudo systemctl stop httpd.service命令来停止正在运行的Apache服务。
2、查看已安装的Apache相关软件包:
执行rpm qa | grep httpd或者yum list installed | grep httpd命令,查看系统中已安装的与Apache相关的软件包。
3、卸载Apache软件包:
执行sudo yum remove httpd命令来卸载Apache软件包及其相关的依赖项。
如果遇到依赖关系问题,可以使用nodeps参数强制卸载,例如sudo yum remove httpd nodeps。
4、清理残留配置文件和数据:
执行sudo rm rf /etc/httpd命令来删除残留的配置文件。
检查并删除可能存在的日志文件和缓存文件,例如/var/log/httpd和/var/cache/httpd目录。
FAQs
Q1: 如何确认CentOS系统中是否安装了Apache?
A1: 可以通过执行命令systemctl status httpd.service来查看Apache服务的状态,如果显示“Active: active (running)”,则说明Apache正在运行;如果显示“inactive”,则说明Apache未运行,也可以使用rpm qa | grep httpd命令来查看系统中是否安装了Apache相关的软件包,如果已安装,会列出相关的软件包信息;如果未安装,则不会有输出。
Q2: 在卸载Apache后,如何确保系统中没有残留的Apache相关文件?
A2: 除了按照上述卸载步骤进行操作外,还可以手动检查一些常见的Apache相关目录和文件,检查/usr/local目录下是否有残留的Apache文件夹;检查系统日志目录/var/log下是否有残留的Apache日志文件;检查配置文件目录/etc下是否有残留的Apache配置文件等,如果发现有残留文件,可以根据实际情况决定是否删除,建议在卸载完成后重启系统,以确保系统完全清除与Apache相关的临时文件和进程。
