nginx系列(3):实现反向代理
7月 13, 2008 – 5:19 下午反向代理又称为服务器加速Server accelerate),原理是将用户的请求转发到目标服务器,然后将结果转发给用户。这样能够保护目标服务器安全、负载均衡容易实现、有点类似防火墙。
关于apache实现反向代理已经在前面(用mod_proxy实现反向代理)介绍过了。这边继续补充一下nginx实现的反向代理。
下面先晒一下nginx的配置:
- server {
- listen 80;
- server_name home.ucenter;
- access_log /var/log/nginx/home.ucenter.access.log;
- location / {
- root /home/shanfeng/workspace/ucenter-home;
- index test.html;
- }
- location ~ \.php$ {
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /home/shanfeng/workspace/ucenter-home$fastcgi_script_name;
- #fastcgi_param SCRIPT_FILENAME /etc/nginx/fastcgi_params;
- include /etc/nginx/fastcgi_params;
- }
- }
- server {
- listen 8080;
- #location / { //例子1
- # proxy_pass http://home.ucenter/;
- #}
- location /home/ { //例子2
- proxy_pass http://home.ucenter/;
- }
- server_name proxy;
- }
简单说明: proxy是一个监听8080虚拟server
例子1.直接把proxy根目录下面的请求全部转发到home.ucenter server上面去。
例子2.把proxy下面所有的请求转发到home.ucenter server上面去。
够简单吧,以上例子只限入门,官方文档