ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

nginx 基础模块 2 虚拟机location等

2020-02-22 22:55:46  阅读:173  来源: 互联网

标签:index www 匹配 虚拟机 nginx 正则 location root


一 虚拟主机

server {
        listen       80;
        server_name  www.yang.com;
        #虚拟机主机重点,一样的ip端口,虚拟机主机就是靠这边的域名来路由内容的
        root         /yang/;
        #根目录 
        index index.html index.php;
        access_log  /yang/yang_com_access.log  main;

        location / {
        }
}   

#虚拟机主机只需要在conf.d目录里 另起一个.conf 文件,里面把server段配好就行了,如果是相同ip端口 用域名来区分,就像上面代码一样

二 日志

nginx 基础模块 2 虚拟机location等
#这些字段是控制日志输出内容的

$remote_addr变量:记录了客户端的IP地址(普通情况下)。
$remote_user变量:当nginx开启了用户认证功能后,此变量记录了客户端使用了哪个用户进行了认证。
$time_local变量:记录了当前日志条目的时间。
$request变量:记录了当前http请求的方法、url和http协议版本。
$status变量:记录了当前http请求的响应状态,即响应的状态码,比如200、404等响应码,都记录在此变量中。
$body_bytes_sent变量:记录了nginx响应客户端请求时,发送到客户端的字节数,不包含响应头的大小。
$http_referer变量:记录了当前请求是从哪个页面过来的,比如你点了A页面中的超链接才产生了这个请求,那么此变量中就记录了A页面的url。
$http_user_agent变量:记录了客户端的软件信息,比如,浏览器的名称和版本号。

nginx 基础模块 2 虚拟机location等
#设置访问日志的存储路径,error_log 是设置错误日志的

三.location

优先级

=    精确匹配:用于标准uri前,要求请求字符串和uri严格匹配。如果匹配成功就停止匹配,立即执行该location里面的请求。
~    正则匹配:用于正则uri前,表示uri里面包含正则,并且区分大小写。
~*  正则匹配:用于正则uri前,表示uri里面包含正则,不区分大小写。
^~  非正则匹配;用于标准uri前,nginx服务器匹配到前缀最多的uri后就结束,该模式匹配成功后,不会使用正则匹配。
无    普通匹配(\);与location顺序无关,是按照匹配的长短来取匹配结果。若完全匹配,就停止匹配。
PS: 优先级从高到低

1 “=”精准匹配

location = /news/ {
            echo "test1";
        }
[root@www quail]# curl 192.168.249.132/news/
test1

2 "~"区分大小写正则匹配

location ~ \.(html) {
    echo 'test2';
}
location ~ \.(htmL) {
    echo 'test3';
}
[root@www quail]# curl 192.168.249.132/index.html
test2
[root@www quail]# curl 192.168.249.132/index.htmL
test3

3 “~*”不区分大小写的正则匹配

location ~* \.(html){
            echo 'test4';
}
[root@www quail]# curl 192.168.249.132/index.htmL
test4
[root@www quail]# curl 192.168.249.132/index.html
test4

4 “^~”不进行正则匹配的标准匹配,只匹配前缀

location ^~ /index/ {
            echo 'test5';
}
[root@www quail]# curl 192.168.249.132/index/
test5
[root@www quail]# curl 192.168.249.132/index/heihei
test5
[root@www quail]# curl 192.168.249.132/index/asdnmkalsjd
test5

5 普通匹配

location / {
            echo 'test6';
}
[root@www quail]# curl 192.168.249.132
test6

标签:index,www,匹配,虚拟机,nginx,正则,location,root
来源: https://blog.51cto.com/13620944/2472972

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有