Nginx

4. nginx配置

2019-02-05  本文已影响0人  我的昵称好听吗

server

+ listen: 监听的端口号
+ server_name: 可以通过那个域名访问当前设置,需要设置host
+ location:当前配置详细信息

location

  1. 可以设置为路径
    如:
location / {
        root /Users/daiyunzhou/code/myproject/vuepro/dist;
        index index.html index.htm;
    }

    # http://hello.test/v2/
    location /v2 {
        root /Users/daiyunzhou/code/myproject/vuepro/dist;
        index index_v2.html;
    }
    
    # 反向代理
    location /api {
        # 代理api.hello.test:8080,实现通过hello.test/api/ 或者 www.hello.test/api/ 访问api.hello.test:8080
        proxy_pass http://api.hello.test:8080;
    }
server {
    listen 8080;
   
    # 需要设置host , 通过http://api.hello.test:8080/api/list.json 访问
    server_name api.hello.test;
    
    # 默认root
    root /Users/daiyunzhou/code/myproject/vuepro/dist;

    # 默认index
    index list.json;
}

代理node服务案例:

访问node接口只能通过http://127.0.0.1:3000/getbaidupic实现,而使用反向代理后可以通过http://hello.test/baidu实现访问;

# 反向代理
    location /baidu {
        # 通过访问http://hello.test/baidu,实现访问 http://127.0.0.1:3000/getbaidupic
        proxy_pass http://127.0.0.1:3000/getbaidupic;
    }

2.通过正则
处理图片,可以通过正则处理,/.(jpg|gif|png)$/ ,不需要添加双斜线
如:

location \.(jpg|gif|png)$ {
        expires 30d;
    }

创建server单独的文件

  1. /usr/local/etc/nginx/下新建一个文件夹conf.d
  2. 创建 hello.conf文件,如下所示:
server {
    listen 80;
    # 需要设置host
    server_name hello.test;
   
    # http://hello.test/
    location / {
        root /Users/daiyunzhou/code/myproject/vuepro/dist;
        index index.html index.htm;
    }

    # http://hello.test/v2/
    location /v2 {
        root /Users/daiyunzhou/code/myproject/vuepro/dist;
        index index_v2.html;
    }
}

nginx.conf中导入配置文件

include /usr/local/etc/nginx/conf.d/*.conf;

如:


image.png

互联网公共域名服务器

warn:

  # 优化重要选项
  gzip  on; 
上一篇 下一篇

猜你喜欢

热点阅读