zoukankan      html  css  js  c++  java
  • nginx 常用配置记录

    $host $http_host 区别:

    $host 含义:

    官网解释:链接

    image.png

    优先级:请求行的主机名[1] > 请求头字段 Host 中的主机名[2] > 与请求匹配的服务器名称[3]

    主机名

    ip或域名,不包含端口;如:访问 http://www.juejin.cn:300, 主机名就是 www.juejin.cn;访问 http://192.168.1.128:8000 主机名就是 192.168.1.128

    1. [1]请求行的主机名

    请求地址中的主机名,如图请求地址为 http://localhost:81 ,那么 $host 值为 localhost

    image.png

    2. [2]请求头字段 Host 的值中的主机名

    如图请求头 Host 值为 localhost:81,那 $host 值为 localhost
    image.png

    3. [3]与请求匹配的服务器名称

    此时的 $host = $server_name , 比如 nginx 配置如下:

    server {
        listen       81;
        server_name  h5.juejin.cn locahost;
        rewrite ^/(.*) https://$http_host/$1 redirect;
    }
    

    访问地址为 http://h5.juejin.cn:81 时,$server_name 值为 h5.juejin.cn
    访问地址为 http://localhost:81 时,注意 $server_name 值还是为 h5.juejin.cn

    $http_host 含义

    请求头字段 Host 的值,既包含主机名[主机名],也包含端口

    访问地址为 http://h5.juejin.cn:81 时,$http_host 值为 h5.juejin.cn:81
    访问地址为 http://localhost:81 时,注意 $server_name 值还是为 h5.juejin.cn

    如图请求头 Host 值为 localhost:81,那 $http_host 值为 localhost:81
    image.png

    1. 重定向

    server {
        listen 80;
        server_name h5.juejin.cn;
        location / {
            if ($scheme = 'http'){
                ## 永久重定向至 https ; 需要注意到底使用 $host 还是 $http_host
                return 301 https://$host$request_uri;
                ## 永久重定向至 https
                rewrite ^(.*) https://$server_name$1 permanent;
                ## 临时重定向至 https
                rewrite ^(.*) https://$server_name$1 permanent;
                rewrite ^/(.*) /test/$1 redirect;
            }
        }
    }
    
  • 相关阅读:
    触屏时间控制
    小程序 坐标算距离 (copy)
    微信小程序 对接口常用
    conversion function to_char to_number
    南通
    日期 function
    数字 function
    字符串处理函数
    沪通铁路1
    NVL NVL2 COALESCE NULLIF decode
  • 原文地址:https://www.cnblogs.com/buyiblogs/p/15539247.html
Copyright © 2011-2022 走看看