server
+ listen: 监听的端口号
+ server_name: 可以通过那个域名访问当前设置,需要设置host
+ location:当前配置详细信息
location
-
root : 当前访问文件的目录,相对路径,如:
/usr/...
-
index : 可以写多个,默认的页面,依次向后查找文件,如:
index index.html index.htm;
-
expires: 有效期,从浏览器缓存读取;
-
proxy_pass : 反向代理
- 可以设置为路径
如:
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;
}
- 反向代理中api.conf(在conf.d中新建)的设置
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;
}
-
端口号为:80
image.png -
端口号为:3000
image.png
2.通过正则
处理图片,可以通过正则处理,/.(jpg|gif|png)$/ ,不需要添加双斜线
如:
location \.(jpg|gif|png)$ {
expires 30d;
}
创建server单独的文件
- 在
/usr/local/etc/nginx/
下新建一个文件夹conf.d
; - 创建
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
互联网公共域名服务器
- 202.206.0.20
warn:
- 语句结尾要加
“;”
; - 在google浏览器不要使用
dev
||app
结尾的域名,会被强制跳转到https
环境; - 设置域名访问的需要设置
host
; - 通过反向代理可以实现跨域;
- nginx.conf 中
# 优化重要选项
gzip on;
网友评论