nginx常见问题

nginx常见问题

1.相同server_name多个虚拟主机优先级访问

优先访问最先读取的server_name
server {
   listen       80; #监听的端口
   server_name  testserver3 jeson.t.imoocc.io; #域名


   #charset koi8-r; #字符集
   #access_log  /var/log/nginx/log/host.access.log  main; #访问日志

   location / {
       root   /opt/app/code3;#项目文件路径
       index  index.html index.htm; #默认定位
   }
   #error_page  404              /404.html;
   # redirect server error pages to the static page /50x.html
   #
   error_page   500 502 503 504 404  /50x.html; #异常处理
   location = /50x.html {
       root   /usr/share/nginx/html; //异常处理页面
   }
}


2.location匹配优先级

以下是按优先级排列说明:
1.等号类型(=)的优先级最高。一旦匹配成功,则不再查找其他匹配项。
2.^~类型表达式。一旦匹配成功,则不再查找其他匹配项。
3.正则表达式类型(~ ~*)的优先级次之。
4.常规字符串匹配类型。按前缀匹配。
实例:
location / {
   # 匹配所有以 / 开头的请求。
   # 但是如果有更长的同类型的表达式,则选择更长的表达式。
   # 如果有正则表达式可以匹配,则优先匹配正则表达式。
   [ configuration B ]
}
location /documents/ {
   # 匹配所有以 /documents/ 开头的请求。
   # 但是如果有更长的同类型的表达式,则选择更长的表达式。
   # 如果有正则表达式可以匹配,则优先匹配正则表达式。
   [ configuration C ]
}
location ^~ /images/ {
   # 匹配所有以 /images/ 开头的表达式,如果匹配成功,则停止匹配查找。
   # 所以,即便有符合的正则表达式location,也不会被使用
   [ configuration D ]
}
location ~* \.(gif|jpg|jpeg)$ {
   # 匹配所有以 gif jpg jpeg结尾的请求。
   # 但是 以 /images/开头的请求,将使用 Configuration D
   [ configuration E ]
}


3.try_files使用

找指定路径下文件,如果不存在,则转给哪个文件执行。(缓存,动静分离)
实例: 
   location / {
       root /opt/app/code;
       try_files /cache $uri @java_page;
   }


   location @java_page{
       proxy_pass http://127.0.0.1:9090;
   } 


4.nginx的alias和root的区别


location /img/ { #匹配url的路径 http://www.yuyu.com/img/request_path/1.png
   root /var/www/image; #定位访问路径
}
#若按照这种配置的话,nginx会去/var/www/image/img/request_path/1.png

location /img/ { #匹配url的路径 http://www.yuyu.com/img/request_path/1.png
   alias /var/www/image; #定位访问路径
}
#若按照这种配置的话,nginx会去/var/www/image/1.png


5.用什么方法传递用户的真实ip
代理:set x_real_ip=$remote_addr
后端服务:$x_real_ip=IP1


6.其他错误处理
问题:nginx:413 Request Entity Too Large
解决
1.用户上传文件限制 client_max_body_size


问题:nginx:502 bad gateway (后端服务无响应)
问题:504 gateway time-out(后端服务执行超时)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值