nginx 快速反向代理,不同域名访问不同服务器

IIS 端口改成81

tomcat端口改成82


下载nginx for windows版本

http://nginx.org/download/nginx-1.5.6.zip


解压

到d盘nginx目录下面

进入etc 编辑 nginx.cnf


输入下面的内容

server    {
listen          80;
server_name     shop.laomm.com;  #指定域名

location / {
proxy_pass              http://127.0.0.1:81;  # 转发给iis服务器
break;
proxy_redirect          off;
proxy_set_header        HOST $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

server    {
listen          80;
server_name     weizhan.laomm.com;

location / {
proxy_pass              http://127.0.0.1:82; # 转发给tomcat服务器
break;
proxy_redirect          off;
proxy_set_header        HOST $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
}
}



保存 运行nginx.exe 启动nginx 就实现了不通域名访问不同的服务器


每次服务器重启完毕之后 运行下 d:\varnish下面的 startngix.bat 根据要求启动nginx 即可

附 startnginx.bat 启动脚本

@echo off
rem 当前bat的作用
 
echo ==================begin========================
 
cls 
SET NGINX_PATH=D:
SET NGINX_DIR=D:\nginx\  #这个改成nginx安装目录
color 0a 
TITLE Nginx 管理程序
 
CLS 
 
ECHO. 
ECHO. * * Nginx 管理程序   *  
ECHO. 
 
:MENU 
 
ECHO. * nginx 进程list *  
tasklist|findstr /i "nginx.exe"
 
ECHO. 
    ECHO.  [1] 启动Nginx  
    ECHO.  [2] 关闭Nginx  
    ECHO.  [3] 重启Nginx  
    ECHO.  [4] 退 出 
ECHO. 
 
ECHO.请输入选择项目的序号:
set /p ID=
    IF "%id%"=="1" GOTO start 
    IF "%id%"=="2" GOTO stop 
    IF "%id%"=="3" GOTO restart 
    IF "%id%"=="4" EXIT
PAUSE 
 
:start 
    call :startNginx
    GOTO MENU
 
:stop 
    call :shutdownNginx
    GOTO MENU
 
:restart 
    call :shutdownNginx
    call :startNginx
    GOTO MENU
 
:shutdownNginx
    ECHO. 
    ECHO.关闭Nginx...... 
    taskkill /F /IM nginx.exe > nul
    ECHO.OK,关闭所有nginx 进程
    goto :eof
 
:startNginx
    ECHO. 
    ECHO.启动Nginx...... 
    IF NOT EXIST "%NGINX_DIR%nginx.exe" ECHO "%NGINX_DIR%nginx.exe"不存在 
 
    %NGINX_PATH% 
 
    cd "%NGINX_DIR%" 
 
    IF EXIST "%NGINX_DIR%nginx.exe" (
        echo "start '' nginx.exe"
        start "" nginx.exe
    )
    ECHO.OK
    goto :eof


搜索