如何实现Nginx的反向代理? 这句话什么意思? 意思是说当客户机来访问服务器的时候,服务器本身并不出面接待,而是将客户的请求转高给手下的子服务器(小弟)负责接待。 比如:你访问www.baidu.com,其实并不时百度总服务器接待的你,而是百度的代理服务器接待的你,不过他们的服务是一样的,提供同样的页面; 如是搭建Nginx服务才能实现这样的效果呢? 搭建一个最简单,最基础nginx代理服务器,需要一台代理服务,两台子服务器,XX台客户机来作验证; 操作流程如下: 第一步、服务器和客户机配好IP地址,其中Nginx代理服务器需要配置两张网卡,两个IP地址,一个和客户机通信,一个和子服务器通信; 代理服务器与客户机和子服务器都分别配置同网段IP地址; 例如: 代理服务器:192.168.4.5 192.168.2.5 子服务器 :192.168.2.100 192.168.2.200 客户机 :192.168.4.10 这样配置的好处是: 可以负载均衡,保障用户的访问体验,保障上网速度,同时也保障了,即便有一台服务器坏掉了,另一台服务可以接待用户访问;第二步、代理服务器上安装Nginx服务软件,两台子服务器上安装HTTPD服务并写入相应的网页,然后启动服务; yum -y install httpd ##安装httpd服务; echo "罗贵" > /var/www/html/index.html ##写一个简单的网页 ./configure --user=nginx --group=nginx --with-http_ssl_module make && make install ##编译安装Nginx第三步、修改Nginx的配置文件; vim /usr /local /nginx /conf /nginx.conf http { ............... ##在文件中找到http开头的行,并在http下面随意找两行添加下面两行的内容; upstream luogui { ##luogui是集群名字,可以自由定义,upstream 上游的意思;翻译过来就是在上游建立一个名字为luogui的集群,集群中包含下述IP地址; server 192.168.2.100:80; server 192.168.2.200:80; } server { listen 80; server_name www.luogui.com; ##域名,可以自由定义; location ^/.php$ { ##匹配网页地址的意思,匹配以 / 开头.php结尾的网页文件; proxy_pass http://luogui; ##通过proxy代理服务器将用户的请求转发给luogui集群服务器;(注:优先级最高,系统会优先处理这条命令) } } 第四步、测试效果; firefox http://192.168.4.5 或者 本地测试 curl http://192.168.4.5 结果应该是暂停任何一台子服务器,客户机访问网页都没有问题; 以上....... (EDN) 祝:开心! 罗贵 2019-04-05于深圳