详解nginx解析语句

server {

        ###项目所用端口(如果是要配置项目域名访问,最好用80,如果要ip地址访问,可以使用自定义的端口号,例如:8080)
        listen       80;
        ###项目域名(如果是要本地ip访问,则用location或者127.0.0.1皆可)
        server_name  www.tp51.com;
        ####ssl加密证书(443端口时使用)
        ##ssl on;  ###开启ssl
        ##ssl_certificate   /app/cert/local.crt;    ##证书
        ##ssl_certificate_key  /app/cert/local_nopwd.key;  ###私钥
        
        ###项目目录
        root    /app/test-tp51/public; 
        
        ###日志文件设置
        # access_log  /var/log/nginx/localhost.access.log;
        
        ###地址匹配块
        location / {
            ##默认请求文件:前后顺序有关系,越在前优先级别越高
            index   index.html index.htm index.php;
            ###try_files尝试读取文件,后面三个参数顺序即为优先级,先尝试从第一个参数找需要访问的文件,依次下去,第三个参数为nginx内部子请求地址.
            ###第一个参数$uri这个是nginx的一个变量,存放着用户访问的地址,
            ###比如:http://www.AAA.com/a/b/aaa.html, 那么$uri就是/a/b/aaa.html
            ###第二个参数$uri/相对于第一个参数则为/a//a/b/aaa.html/+indexb/aaa.html/,此时把aaa.html当作一个目录,则此时要找的文件是 /a/b/aaa.html/(index.html|index.htm|index.php)
            ###第三个参数/index.php?$query_string;在第一和第二个参数都没找到文件的情况下,则向第三个参数发起一个内部子请求;比如http://www.AAA.com/a/b/?id=5,则访问地址为http://www.AAA.com/index.php?id=5
            try_files $uri $uri/ /index.php?$query_string;
            ###返回json格式数据用
            #default_type    application/json;
              #return 502 '{"status":$uri,"msg":"服务正在升级,请稍后再试……$uri/"}';
            ###如果filename存在,则为真,否则做伪静态映射
            #if (!-e $request_filename){  
            #    rewrite ^(.*)$ /index.php?s=$1 last;
            #    break;
            #}               
        }    
        
        ####上面的对index.php的请求会被此模块抓取住,从而进入fastcgi处理程序
        location ~ .+\.php($|/) {
            ##NOTE: 'fpmservice' in this conatiner is associated with the alias name in docker run option '--link=PHP_FPM_CONTAINER_NAME:fpmservice'
            ###php服务地址,正常非docker情况下,直接写127.0.0.1:9000即可,但是因为我用的docker,所以写的是php容器的别名fpmservice
            fastcgi_pass fpmservice:9000;
            fastcgi_index index.php;
            ###SCRIPT_FILENAME默认为$fastcgi_script_name(例/a/b),这里给重新设置加上$document_root(例/app),此变量值设置为了/app/a/b
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            ###fastcgi_params 文件中含有各个nginx常量的定义
            include fastcgi_params;
        }

        location ~ /\.ht {
            deny all;
        }    
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值