Nginx从陌生到入门03——反向代理的简单配置

在上一节,主要写了如何进行虚拟主机配置的最基础配置。这一节的内容,依然非常重要——反向代理


假设以上图片internet proxy webserver的别名分别是A B C
反向代理的本质是我们A直接访问C是不通的,C作为服务器集群,只对内网暴露,但是我们访问B通过B就可以访问C了。所以就必须要求B和C必须是互相联通的。有人会说这个正向代理(科学上网)有什么区别,他们最主要的区别是正向代理,代理的是我们自己,你理解为是和用户站在一方的。而反向代理,则是代理的提供服务的服务器,它是和web服务器站在一方的。

反向代理的基础配置也很简单,话不多说我们直接进行操作

我们先配置一个站点:test3.aionlinefun.icu 。它的配置是这样的。

 server {
        listen       80;
    #    listen       somename:8080;
        server_name  test3.aionlinefun.icu;

        location / {
           root    html/test;
            index  index.html index.htm;
        }
    }
  • 现在我访问test3.aionlinefun.icu 肯定是跳到了它的首页。
  • 要配置反向代理,我们只需要在location代码块里配置一个 proxy_pass 后面跟上你想要代理的地址即可。这里我填写google。那接下来的配置就变成了这样:

    server {
          listen       80;
          server_name  test3.aionlinefun.icu;
    
          location / {
              proxy_pass http://google.com;
              root    html/test;
              index  index.html index.htm;
          }
      }

    需要注意的是proxy_pass后面要有空格,以及该行结尾要有分号,以及必须填写http而不能是https。如果是https话需要额外的配置,在这里直接写https会报错。这个我们后续再来讲解。写完配置之后记得重启一下nginx,让配置生效 systemctl restart nginx

  • 接下来我们访问这个域名,就会发现它跳转到了google了。反向代理的配置要就到此结束了。其实就是一行 proxy_pass配置的事情。还有最重要的是当前服务器和要被代理的服务器之间网络是通着的

    细心的朋友们可能会发现proxy_pass配置了之后, root html/test;index index.html index.htm; 这个配置就不生效了,这是正常的。因为都代理的别的服务器上了,不走这里的首页配置了,就可以把他们注释掉了。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇