原创:Nginx反向代理实战部署

Posted 一刀一刀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原创:Nginx反向代理实战部署相关的知识,希望对你有一定的参考价值。

均衡负载服务器 10.0.0.9

[root@web03 conf]# vim nginx.conf

 

worker_processes  1;

            events {

                worker_connections  1024;

            }

            http {

                include       mime.types;

                default_type  application/octet-stream;

                sendfile        on;

                keepalive_timeout  65;

                upstream server_pools {

           ## ip_hash;

           server 10.0.0.7:80 weight=1 max_fails=3 fail_timeout=10;

           server 10.0.0.8:80 weight=1        

           max_fails=3 fail_timeout=10 ;

                }

                server {

                    listen 80;

                    server_name bbs.etiantian.org;

                    location / {

                        proxy_pass http://server_pools;

                    }

                  }

           }

 

 

hosts

[root@web03 conf]# cat /etc/hosts

127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4

::1          localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.1.5     lb01

172.16.1.6     lb02

172.16.1.7     web02

172.16.1.9     web03

172.16.1.8     web01 bbs.etiantian.org www.etiantian.org

172.16.1.51     db01 db01.etiantian.org

172.16.1.31     nfs01

172.16.1.41     backup

172.16.1.61     m01

 

 

  web服务器1   10.0.0.7

                           [root@web02 conf]# cat nginx.conf

worker_processes  1;

      events {

          worker_connections  1024;

      }

      http {

          include       mime.types;

          default_type  application/octet-stream;

          sendfile        on;

          keepalive_timeout  65;

          log_format  main  \'$remote_addr - $remote_user [$time_local] "$request" \'

                            \'$status $body_bytes_sent "$http_referer" \'

                            \'"$http_user_agent" "$http_x_forwarded_for"\';

          server {

              listen       80;

              server_name  bbs.etiantian.org;

              location / {

                  root   html/bbs;

                  index  index.html index.htm;

              }

  access_log  logs/access_bbs.log  main;

          }  

          server {

              listen       80;

              server_name  www.etiantian.org;

              location / {

                  root   html/www;

                  index  index.html index.htm;

              }

              access_log  logs/access_www.log  main;

          }

}

 

hosts

[root@web02 conf]# cat /etc/hosts

127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4

::1          localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.1.5     lb01

172.16.1.6     lb02

172.16.1.7     web02 bbs.etiantianorg www.etiantian.org blog.etiantian.org

172.16.1.9     web03

172.16.1.8     web01

172.16.1.51     db01 db01.etiantian.org

172.16.1.31     nfs01

172.16.1.41     backup

172.16.1.61     m01

10.0.0.9       bbs.etiantianorg www.etiantian.org blog.etiantian.org

 

web服务器2 10.0.0.8

[root@web01 conf]# cat nginx.conf

 worker_processes  1;

      events {

          worker_connections  1024;

      }

      http {

          include       mime.types;

          default_type  application/octet-stream;

          sendfile        on;

          keepalive_timeout  65;

          log_format  main  \'$remote_addr - $remote_user [$time_local] "$request" \'

                            \'$status $body_bytes_sent "$http_referer" \'

                            \'"$http_user_agent" "$http_x_forwarded_for"\';

          server {

              listen       80;

              server_name  bbs.etiantian.org;

              location / {

                  root   html/bbs;

                  index  index.html index.htm;

              }

  access_log  logs/access_bbs.log  main;

          }  

          server {

              listen       80;

              server_name  www.etiantian.org;

              location / {

                  root   html/www;

                  index  index.html index.htm;

              }

              access_log  logs/access_www.log  main;

          }

}

hosts

[root@web01 conf]# cat /etc/hosts

127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4

::1          localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.1.5     lb01

172.16.1.6     lb02

172.16.1.7     web02

#172.16.1.8     web01   www.etiantian.org bbs.etiantian.org blog.etiantian.org

#172.16.1.9     web03

172.16.1.51     db01 db01.etiantian.org

172.16.1.31     nfs01

172.16.1.41     backup

172.16.1.61     m01

10.0.0.9     www.etiantian.org bbs.etiantian.org blog.etiantian.org etiantian.org

 

总结

1 两个web服务器的nginx.conf 必须是一样的

2两个web都解析负载均衡服务器

3本地win hosts解析负载均衡服务器

              

 

以上是关于原创:Nginx反向代理实战部署的主要内容,如果未能解决你的问题,请参考以下文章

云原生之Docker实战使用docker部署nginx-proxy-manager-zh反向代理工具

JAVA实战技术:nginx之30分钟搞定nginx反向代理和负载均衡

nginx的项目实战:nginx反向代理微服务端口

干货|基于nginx反向代理的同IP多域名解析

uwsgi+nginx反向代理项目部署

实战录 | 今天聊聊Nginx反向代理使用