比如下面一段配置
if (!-e $request_filename) {
rewrite /admin$ $scheme://$host$uri/ permanent;
rewrite ^(/[^/]+)?(/sp-.*) $2 last;
rewrite ^(/[^/]+)?(/.*\.php) $2 last;
}
why would $http_host be more dangerous?
$host的值有可能变化,先取请求头的host,如果没有去取接受请求的那个server的名称
$server_name表示接受请求的那个server的名称
至于$http_host,官方文档也没有这个值, 是不是题主写错了。 我只发现$http_name
下面贴上官方文档对着三个变量的定义:
$host
in this order of precedence: host name from the request line, or host name from the “Host” request header field, or the server name matching a request
$http_name
arbitrary request header field; the last part of a variable name is the field name converted to lower case with dashes replaced by underscores
$server_name
name of the server which accepted a request
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。