在为应该运行使用 WebSockets 的网站的 nginx 设置配置文件时,所有教程都建议使用这个:
location /wsapp/ {
proxy_pass http://websiteName;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
}
$host 和 $http_upgrade 到底是什么?它们是需要替换的伪变量吗?
答案1
$http_upgrade
被名称为 的 HTTP 标头替换Upgrade
。
$host
或者是:
- 请求行中的主机名
- Host 请求标头字段中的主机名
- 与请求匹配的服务器名称
nginx 将这些变量替换为实际内容。nginx 变量的完整列表列在http://nginx.org/en/docs/varindex.html