安装前的准备工作
1、更新系统:确保系统软件包是最新的,执行以下命令:
sudo yum update y
2、安装依赖包:安装一些必要的依赖包,包括开发工具、PCRE库等,执行以下命令:

sudo yum groupinstall 'Development Tools' y sudo yum install pcre pcredevel openssl openssldevel y
下载并安装Apache 2.4
1、下载Apache 2.4源码包:可以从Apache官方网站或其他可信赖的源下载Apache 2.4的源码包,下载httpd2.4.x.tar.gz(x为版本号)到本地。
2、解压源码包:将下载的源码包解压到指定目录,如/usr/local/src。
tar zxvf httpd2.4.x.tar.gz C /usr/local/src cd /usr/local/src/httpd2.4.x
3、配置编译选项:运行./configure脚本来配置编译选项,可以根据需要添加或修改参数。
./configure prefix=/usr/local/apache2.4 enableso enablerewrite enablessl withincludedapr withmpm=event withpcre=/usr/local/src/pcre8.44
prefix指定安装路径,enableso启用共享对象支持,enablerewrite启用URL重写模块,enablessl启用SSL支持,withmpm=event使用Event MPM(多路处理模块),withpcre指定PCRE库的路径。
4、编译和安装:执行以下命令进行编译和安装:
make sudo make install
5、配置环境变量:将Apache的相关命令添加到系统的环境变量中,方便使用,编辑/etc/profile文件,在最后添加以下内容:

export PATH=/usr/local/apache2.4/bin:$PATH export LD_LIBRARY_PATH=/usr/local/apache2.4/lib:$LD_LIBRARY_PATH
然后使环境变量生效:
source /etc/profile
配置Apache服务器
1、配置文件结构:Apache的主配置文件是httpd.conf,通常位于安装目录下的conf文件夹中,还有一些其他的配置文件和目录用于存储虚拟主机配置、日志文件等。
2、监听端口:默认情况下,Apache监听80端口(HTTP)和443端口(HTTPS),可以通过修改httpd.conf文件中的Listen指令来更改监听端口。
Listen 8080
这将使Apache监听8080端口。
3、设置根目录:DocumentRoot指令用于设置网站的根目录,即网站文件的存放位置。
DocumentRoot "/var/www/html"
4、目录权限:通过<Directory>指令可以设置目录的访问权限、索引文件、跟随符号链接等属性。

<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>5、虚拟主机配置:如果需要配置虚拟主机,可以在httpd.conf文件中添加VirtualHost段,或者在conf.d/vhosts.conf文件中进行配置。
<VirtualHost *:80>
ServerName example.com
DocumentRoot "/var/www/example"
<Directory "/var/www/example">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>6、日志文件配置:ErrorLog和CustomLog指令用于设置错误日志和访问日志的文件路径和格式。
ErrorLog "/var/log/httpd/error_log" CustomLog "/var/log/httpd/access_log" combined
7、启动和停止服务:可以使用以下命令来启动、停止、重启和检查Apache服务的状态:
# 启动Apache服务 sudo /usr/local/apache2.4/bin/apachectl start # 停止Apache服务 sudo /usr/local/apache2.4/bin/apachectl stop # 重启Apache服务 sudo /usr/local/apache2.4/bin/apachectl restart # 检查Apache服务状态 sudo /usr/local/apache2.4/bin/apachectl status
常见问题及解决方案
1、防火墙配置:如果无法访问Apache服务器,可能是防火墙阻止了相应的端口,可以使用以下命令开放端口:
sudo firewallcmd permanent addport=80/tcp sudo firewallcmd permanent addport=443/tcp sudo firewallcmd reload
2、SELinux配置:在某些情况下,SELinux可能会阻止Apache访问某些资源,可以将SELinux设置为Permissive模式或Disabled模式,但需要注意这可能会降低系统的安全性,可以使用以下命令临时或永久关闭SELinux:
临时关闭:setenforce 0
永久关闭:编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,然后重启系统。
3、权限问题:如果遇到权限相关的错误,需要检查相关目录和文件的权限是否正确,确保Apache进程有权限读取配置文件、网站文件和日志文件等,可以使用chmod和chown命令来修改权限和所有者。
