将 Nginx 设置为反向代理 Apache 在 Ubuntu 22.04 上

2022年7月17日 | 分类:Apache

在本教程中,让我们学习使用 Nginx 作为代理服务器的步骤 Apache Ubuntu 22.04 LTS 上的 Web 服务器以获得更好的性能。

Apache 作为 Web 服务器和 Nginx,在服务器世界中是一个公认的名称。 尽管两者都在为数百万台托管服务器提供动力,但是在性能方面 Nginx 通常比 Apache 而后者以广泛的强大功能和模块而闻名。

内容

将 Nginx 设置为反向代理的步骤 Apache 在 Ubuntu 22.04 上

要学习本教程,您必须拥有 Ubuntu 22.04 或更早版本 sudo 安装用户权限 Apache 和 Nginx。

1. 更新 Ubuntu 22.04

首先在您的系统上执行系统更新命令以安装最新的可用更新。 这将确保我们获得系统的最新可用软件包更新。

sudo apt update && sudo apt upgrade

 

2.安装 Apache 网络服务器

如果您已经拥有并使用 Apache Ubuntu 22.04 系统上的 Web 服务器,然后跳过此步骤并转到下一个。 否则,使用 APT 并安装它。

sudo apt install apache2

 

3.更改默认值 Apache 港口

如果我们想使用 Nginx 服务器作为代理服务器来为您的网站提供服务,那么它需要使用端口 80。 因此,我们必须确保 Apache 没有保留HTTP端口80。所以,在这一步中,我们将编辑端口配置文件 Apache 将端口从 80 更改为 8000。

sudo nano /etc/apache2/ports.conf

查找并将端口 80 更改为 8000

: 听 80 到 8000

 

Save 文件使用 Ctrl+O, 打 Enter 键,然后使用退出文件编辑器 Ctrl+X.

另外,更改默认端口 80 在虚拟主机配置文件中也是如此。

sudo nano /etc/apache2/sites-enabled/000-default.conf

将 Virtualhost 的端口 80 更改为 8000

 

Save 并像我们之前所做的那样退出文件。

现在,重新启动 apache 服务器

sudo systemctl restart apache2

 

4. 测试 Apache 正在开发新港口

一旦你完成了更改 Apache 默认端口,让我们检查它是否在新设置的端口上工作。 对于那个简单的类型,您的服务器 IP 地址或带有端口 8000 的域。格式 example 如下:

https://your-serer-ip:8000

或者

https://example.com:8000

测试 Apache 正在开发新港口

 

5.安装Nginx

我们已经配置了 Apache 在新端口上工作,这意味着 Nginx 可以免费使用我们的端口 80。 让我们首先在我们的 Ubuntu 22.04 上安装 Nginx。

sudo apt install nginx

完成安装后,将默认配置文件移动到安全的地方,以备日后使用。

cd /etc/nginx/sites-enabled/
sudo mv default /opt

现在使用给定的行创建一个新的默认站点配置文件:

sudo nano default

复制粘贴以下行。 这里我们重定向 Nginx 来读取 Apache Web 服务器生成的内容。

server {
listen 80 default_server;
index index.php index.html index.htm;
location / {
proxy_pass https://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;
}
}

Save 文件通过使用 Ctrl+O, 打 Enter 键,然后使用退出 Ctrl+X。

检查 Nginx 对于任何配置错误:

sudo nginx -t

重启 Nginx

sudo systemctl restart nginx

检查 Nginx 是否有任何配置错误

 

现在,您可以访问在 Apache Nginx 代理服务器后面的服务器使用服务器 IP 地址或域而不添加任何端口号。

您可以检查 Nginx 是否作为代理服务器工作:

curl --haproxy-protocol localhost

输出将显示 Nginx/xxx 以进行确认。

 

https://bynss.com/linux/937083.html
 


发表回复

您的电子邮箱地址不会被公开。