将Nginx配置为反向代理(与Apache共存)

想做的事情 zuò de

在中国运行Nginx的反向代理,并将处理任务交给Apache。

①访问 → ②Nginx → ③Apache → ④返回处理

反向代理是什么?

使用服务器端代理的好处是:
– 可以隐藏原始服务器
– 通过使用多台服务器可以实现负载均衡
以上是使用服务器端代理的优点。

为什么选择Nginx

尽管Apache也具有反向代理功能,但由于Nginx擅长处理大量简单请求的特点,许多情况下选择采用Nginx。

在本次使用的Web服务器中,我们将使用Nginx,但复杂的应用处理将由Apache完成,同时也可以使用Nginx作为反向代理将请求转发给Apache。

安装Nginx

在假设CentOs7已经安装了Apache的前提下,我们将安装Nginx。

由于Nginx和端口冲突,所以暂停Apache。
systemctl停止httpd。

编写存储库的配置文件

首先,创建一个文件来进行仓库的设置。

# vi /etc/yum.repos.d/nginx.repo

在文件中写下以下内容

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
样本代码根据使用的发行版,将”OS”替换为”rhel”或”centos”,将”OSRELEASE”替换为”6″或”7.x”中的”6″或”7″。

语法
[nginx]
name=nginx软件源
baseurl=http://nginx.org/packages/{OS}/{OSRELEASE}/$basearch/
gpgcheck=0
enabled=1

安装Nginx

# yum install nginx

启动和停止Nginx

#自動起動
 systemctl enable nginx

#起動
 systemctl start nginx

#停止
 systemctl stop nginx

确认启动

スクリーンショット 2018-06-06 11.48.25.png

反向代理服务器的配置

将Apache的端口进行更改。

由于Nginx和端口冲突,将Apache的端口号从80更改为8080。

Listen 80#変更
Listen 8080

重新启动Apache。

# systemctl restart httpd

设置Levis代理

请在 /etc/nginx/conf.d/ 目录下创建一个名为 reverse_proxy.conf 的文件。文件名可以随意取,但请确保文件扩展名为 conf。

server {
  listen 80;               # ポート番号80番でアクセスされたら
  server_name localhost;   # http://localhost でアクセスされたら

  location / {
    proxy_pass http://127.0.0.1:8080; # どこにアクセスさせるか
    proxy_redirect                          off;
    proxy_set_header Host                   $host;
    proxy_set_header X-Real-IP              $remote_addr;
    proxy_set_header X-Forwarded-Host       $host;
    proxy_set_header X-Forwarded-Server     $host;
    proxy_set_header X-Forwarded-Proto      $scheme;
    proxy_set_header X-Forwarded-For        $proxy_add_x_forwarded_for;
  }
}

隐藏服务器版本

http {
  # ↓これを追加
  server_tokens off;
}

重新启动Nginx

重新启动nginx服务。

当您访问 http://localhost 时,将显示 Apache 的界面。
这表示反向代理的设置已经完成。

记事本

/etc/nginx/nginx.conf

只需要一种选择就可以了:请给出以下内容的中文本土化解释。

Nginx逆向代理

广告
将在 10 秒后关闭
bannerAds