前言
今天接触了一个项目,它只能用Apache2,而且最近PHP8.5也推出了来了,所有想着试试就逝世的态度,结果还挺简单的,只能说配置好,后续再深入了解一下。
因此这里把简单的配置方案做一下。(我这里用PHP8.4作为演示)
环境
1.Ubuntu
2.Nginx
3.PHP8.4-FPM
步骤
1.安装Apache2
|
1 2 |
add-apt-repository ppa:ondrej/apache2 apt install apache2 |
2.安装PHP8.4-fpm
|
1 2 |
apt install php8.4-fpm apt install libapache2-mod-php8.4 |
3.完成以上步骤说明已经安装完成,接下来我们检查Apache2服务状态:
|
1 |
sudo systemctl status apache2 |
输入命令后如果出现以下图片所示:(注:如果出现图所示属于正常,说明80端口被占用)

4.修改Apache2端口(注:也可以通过FTP进行ports.conf、000-default.conf两个文件修改,文件位置:etc/apache2/ports.conf、etc/apache2/sites-enabled/000-default.conf)
|
1 |
vim /etc/apache2/ports.conf |
修改为如下:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# If you just change the port or add more ports here, you will likely also # have to change the VirtualHost statement in # /etc/apache2/sites-enabled/000-default.conf Listen 8081 Listen 444 Listen 444 # vim: syntax=apache ts=4 sw=4 sts=4 sr noet |
修改VirtualHost配置文件中的端口:
|
1 |
vim /etc/apache2/sites-enabled/000-default.conf |
修改端口:
|
1 |
<VirtualHost *:8081> |
以上两个文件修改完成后输入以下代码查看有没有问题报错
|
1 2 |
systemctl restart apache2 systemctl status apache2 |
如果出现以下代码说明被占用的端口已经解决,同时问题也解决,可以正常工作了
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-10-12 10:13:47 CST; 7s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 124028 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 124032 (apache2) Tasks: 6 (limit: 8788) Memory: 10.3M CPU: 42ms CGroup: /system.slice/apache2.service ├─124032 /usr/sbin/apache2 -k start ├─124033 /usr/sbin/apache2 -k start ├─124034 /usr/sbin/apache2 -k start ├─124035 /usr/sbin/apache2 -k start ├─124036 /usr/sbin/apache2 -k start └─124037 /usr/sbin/apache2 -k start Oct 12 10:13:47 VM-0-7-ubuntu systemd[1]: Starting The Apache HTTP Server... Oct 12 10:13:47 VM-0-7-ubuntu systemd[1]: Started The Apache HTTP Server. |
接下来我们进行下一步
5.为apache2启用php-fpm
|
1 2 |
a2enmod proxy_fcgi setenvif a2enconf php8.4-fpm |
6.安装PHP模块
|
1 |
apt install php8.4-* |
完成以上步骤进行apache2重启
|
1 |
systemctl restart apache2 |
7.测试
接下来我们给服务器添加一个访问页面,网站目录为:/var/www/html,在这个目录下建立info文件(注:也可以在本地用新建文本形式进行建立并把文件名修改成info.php后用FTP上传到/var/www/html目录下):
|
1 |
vim/var/www/html/info.php |
输入以下内容保存(PS:用本地新建文本形式把下面文件复制到新建的文本里):
|
1 2 3 |
<?php phpinfo; ?> |
保存(FTP上传)退出,输入您网站IP地址进行访问,如果出现PHP版本页面说明能正常访问,如果访问或者转向为您网站解析的网址那么接下来我们需要修改NGINX下的配置文件:etc/nginx/sites-enabled/default
接下来我们进行nginx的配置文件进行修改(注:可以通过FTP进行修改)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
server { listen80; index index.html index.htm index.nginx-debian.html index.php; server_name test.xxx.com; location / { proxy_pass_header Server; proxy_pass http://127.0.0.1:8081; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_redirect off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } access_log /var/log/nginx/test.xxx.com-access.log; error_log /var/log/nginx/test.xxx.com-error.log; } |
编辑完后进行重启nginx
|
1 |
systemctl restart nginx |
现在再次输入IP地址可以正常访问了。
总结
Nginx与Apache2各有优缺点,具体还是要看需求,能正常访问Apache2就能正常访问phpMyAdmin进行数据库添加和删除。




