Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
学习地址:http://www.runoob.com/linux/nginx-install-setup.html
----------------------------------------------
Nginx正反向代理、负载均衡等功能实现配置
2016年06月07日 11:20:20
阅读数:63287
系统环境:
VirtualBox Manager
Centos6.4
nginx1.10.0
IP对应的机器名:
IP 机器名 角色名
10.0.0.139 [elk] client
10.0.0.136 [lvs-master] nginx server
10.0.0.137 [kvm] web server 1
10.0.0.111 [lvs-backup] web server 2
一、正向代理
概念这里不在介绍,可以参考此文http://my.oschina.net/yoyoko/blog/147414。
1.1 环境介绍
1.2 配置介绍
Nginx server:(内网地址:10.0.0.136,外网地址:172.16.27.64)
使用VirtualBox Manager虚拟出双网卡。
[plain] view plain copy
- [root@lvs-master conf.d]# ifconfig
- eth0 Link encap:Ethernet HWaddr 08:00:27:30:56:99
- inet addr:10.0.0.136 Bcast:10.255.255.255 Mask:255.0.0.0
- inet6 addr: fe80::a00:27ff:fe30:5699/64 Scope:Link
- UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
- RX packets:891978 errors:0 dropped:0 overruns:0 frame:0
- TX packets:9509 errors:0 dropped:0 overruns:0 carrier:0
- collisions:0 txqueuelen:1000
- RX bytes:81841095 (78.0 MiB) TX bytes:13339058 (12.7 MiB)
- eth1 Link encap:Ethernet HWaddr 08:00:27:55:4C:72
- inet addr:172.16.27.64 Bcast:172.16.27.255 Mask:255.255.255.0
- inet6 addr: fe80::a00:27ff:fe55:4c72/64 Scope:Link
- UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
- RX packets:913671 errors:0 dropped:0 overruns:0 frame:0
- TX packets:22712 errors:0 dropped:0 overruns:0 carrier:0
- collisions:0 txqueuelen:1000
- RX bytes:109369858 (104.3 MiB) TX bytes:1903855 (1.8 MiB)
- lo Link encap:Local Loopback
- inet addr:127.0.0.1 Mask:255.0.0.0
- inet6 addr: ::1/128 Scope:Host
- UP LOOPBACK RUNNING MTU:16436 Metric:1
- RX packets:36222 errors:0 dropped:0 overruns:0 frame:0
- TX packets:36222 errors:0 dropped:0 overruns:0 carrier:0
- collisions:0 txqueuelen:0
- RX bytes:3899937 (3.7 MiB) TX bytes:3899937 (3.7 MiB)
[plain] view plain copy
- [root@lvs-master conf.d]# cat zxproxy.conf
- server {
- listen 80; #监听的端口
- server_name 10.0.0.136; #server的内容地址,与client需要网络互通
- resolver 172.16.5.1; #DNS,这个是DNS,访问外网
- location / {
- proxy_pass http://$http_host$request_uri; #$http_host和$request_uri是nginx系统变量,不需要替换,保持原样
- }
Nginx client:
只有一个内网网卡,通过访问Nginx server去访问internet,其实翻墙、肉鸡、之类的俗称就是这个原理。
[plain] view plain copy
- [root@kvm ~]# ifconfig
- eth0 Link encap:Ethernet HWaddr 08:00:27:72:8C:3B
- inet addr:10.0.0.137 Bcast:10.255.255.255 Mask:255.0.0.0
- inet6 addr: fe80::a00:27ff:fe72:8c3b/64 Scope:Link
- UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
- RX packets:1462448 errors:0 dropped:0 overruns:0 frame:0
- TX packets:21130 errors:0