如何在 Debian 11 上将 Nginx 设置为 Apache 的反向代理
在此页
- 先决条件
- 开始
- 安装和配置 Apache
- 安装和配置 Nginx
- 验证 Nginx Web 服务器
- 结论
Nginx 和 Apache 都是免费的、开源的,并且是世界上最受欢迎的 Web 服务器。 Apache 以其强大而闻名,而 Nginx 以其速度而闻名。两者都有一些优点和缺点。 Nginx 适用于静态内容,而 Apache 适用于动态内容。如果我们将两个服务器结合起来,那么我们将获得更好的结果。
在本教程中,我将 Apache 配置为后端服务器,并使用 Nginx 作为 Debian 11 上 Apache 的反向代理。
先决条件
- 运行 Debian 11 的服务器。
- 在服务器上配置了根密码。
入门
在开始之前,建议将您的系统包缓存更新到最新版本。您可以使用以下命令更新它:
apt-get update -y
更新包缓存后,使用以下命令安装其他所需的依赖项:
apt-get install gnupg2 curl -y
安装所有必需的依赖项后,您可以继续下一步。
安装和配置 Apache
在本节中,我们将安装 Apache Web 服务器并将其配置为在端口 8000 上运行。
首先,使用以下命令安装 Apache Web 服务器:
apt-get install apache2 -y
安装 Apache 后,编辑 Apache 端口配置文件:
nano /etc/apache2/ports.conf
将 Apache 默认端口从 80 更改为 8000:
Listen 8000
保存并关闭文件,然后编辑 Apache 默认配置文件:
nano /etc/apache2/sites-enabled/000-default.conf
将默认端口从 80 更改为 8000,如下所示:
<VirtualHost *:8000>
保存并关闭文件,然后重新加载 Apache 服务以应用更改:
systemctl restart apache2
现在,打开您的 Web 浏览器并使用 URL http://your-server-ip:8000 访问 Apache 测试页面。您应该会在以下屏幕上看到 Apache 默认测试页面:

安装和配置 Nginx
现在,我们将安装 Nginx 并将其配置为反向代理,以将传入请求传递到 Apache 服务器。
首先,使用以下命令安装 Nginx:
apt-get install nginx -y
安装 Nginx 后,使用以下命令编辑 Nginx 默认虚拟主机配置文件:
nano /etc/nginx/sites-enabled/default
删除所有行并添加以下行:
server {
listen 80;
index index.php index.html index.htm;
server_name your-server-ip;
location / {
proxy_pass http://localhost:8000;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
保存并关闭文件,然后使用以下命令验证 Nginx 是否存在任何语法错误:
nginx -t
接下来,重新加载 Nginx 服务以应用更改:
systemctl restart nginx
验证 Nginx Web 服务器
此时,Nginx 已安装并配置为将所有请求传递给 Apache 后端服务器。您现在可以打开 Web 浏览器并输入 URL http://your-server-ip。您应该会在以下屏幕上看到 Apache 网络服务器默认页面:

结论
恭喜!您已成功安装并配置 Nginx 作为 Apache 的反向代理。您现在可以在生产环境中使用此设置来加快网站性能。