Nginx进阶(1)——nginx本地代理配置访问node服务

一、windows安装

  1. 官网下载地址:https://nginx.org/en/download.html
    Nginx进阶(1)——nginx本地代理配置访问node服务_第1张图片
    image.png
  2. 解压后放到放到指定文件目录中


    image.png
  3. 启动nginx
    方法一:通过命令行进入到nginx文件目录,执行nginx命令即可
    方法二:双击目录下的nginx.exe文件,即可启动成功(可将nginx.exe添加到桌面快捷方式)
  4. 停止nginx
    命令行进入nginx文件目录,执行如下命令,停止服务器:

强制停止nginx服务器,如果有未处理的数据,丢弃
C:\Users\wayne\Desktop\work\nginx-1.8.1 nginx -s stop
优雅的停止nginx服务器,如果有未处理的数据,等待处理完成之后停止
C:\Users\wayne\Desktop\work\nginx-1.8.1 nginx -s quit

还可通过执行软件的形式停止,下载killNginx.bat软件(需要该软件的同学可以私信发给你),双击即可停止所有nginx进程

二、nginx相关配置

  1. 修改配置文件


    修改conf文件夹下的nginx.conf文件

    同时新建与conf同级的文件夹conf.d文件夹


    可配置不同端口的.conf文件,也可放在同一文件内
  server {
        listen       808;
        server_name  localhost;
        location / {
            root   'C:/Users/wayne/Desktop/work';
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

此为base.conf文件,由于80端口被window服务占用,故用808端口

  1. vue项目配置本地node服务端接口
    本地8080端口vue项目映射到当前9090端口
server {
    listen       9090;
    server_name  _;
    location / {
        proxy_pass  http://localhost:8080/;
        #Proxy Settings
        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;
        proxy_set_header   Connection       close;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        proxy_max_temp_file_size 0;
        proxy_connect_timeout      90;
        proxy_send_timeout         90;
        proxy_read_timeout         90;
        proxy_buffer_size          4k;
        proxy_buffers              4 32k;
        proxy_busy_buffers_size    64k;
        proxy_temp_file_write_size 64k;
   }

通过localhost:9090/api/ 映射到localhost:3006端口,访问node服务端接口

    location /api {
        proxy_pass   http://localhost:3006/;
        #Proxy Settings
        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;
        proxy_set_header   Connection       close;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        proxy_max_temp_file_size 0;
        proxy_connect_timeout      90;
        proxy_send_timeout         90;
        proxy_read_timeout         90;
        proxy_buffer_size          4k;
        proxy_buffers              4 32k;
        proxy_busy_buffers_size    64k;
        proxy_temp_file_write_size 64k;
   }
}

通过访问localhost:9090/api/users连接node服务端接口数据

server {
    listen 3006;
    server_name   localhost;
    location /users {
        proxy_pass   http://localhost:3000/users;
    }
    location  /goods {
        proxy_pass http://localhost:3000/goods;
    }
}

你可能感兴趣的:(Nginx进阶(1)——nginx本地代理配置访问node服务)