我一直在阅读反向代理,我想知道什么时候proxy_set_headerHost$host
比proxy_set_headerHost$proxy_host
更合适。我做了一些研究,在这篇文章中,它说在大多数情况下我们将Host设置为$host。那么为什么nginx默认为$proxy_host?为了帮助我更具体地理解,如果我们使用$proxy_host,这里(文章底部)的反向代理配置是否仍然有效?
谢谢
$proxy_host是一个关于上游服务器的标签,所以nginx默认这样做。但是如果你想添加其他关于主机的标签(头),使用$host。
一般来说,没有必要显式执行proxy_set_headerHost$proxy_host
,因为它是默认值。如果您需要通过proxy_pass
指令中的内容以外的内容调用服务器,那么您需要通过proxy_set_header内容
覆盖。
如果要代理与 server_name
指令中相同的主机,则有机会使用 proxy_set_header $host
。如果实际应用程序托管在另一个端口或某些内部服务器上,则通常会出现这种情况。
server {
listen 80;
server_name site.example.com;
location / {
proxy_set_header Host $host;
proxy_pass http://localhost:8080;
}
}
如果您向上游调用的名称不是其实际的DNS名称,那么您可能会看到如下内容:
# 192.168.2.1 responds to site.example.com, but
# site.example.com doesn't actually resolve to 192.168.2.1
proxy_pass http://192.168.2.1;
proxy_set_header Host site.example.com;
另一种情况可能是“基于名称”的虚拟主机,其中上游有一个有用的DNS名称,但您想用另一个名称来称呼它。
proxy_pass http://origin.example.com;
proxy_set_header Host site.example.com
我已经检查了关于同一问题的大多数主题,但我找不到解决方案。 我的应用程序使用连接到一个服务,当我使用托管该服务的机器的IP地址时,它工作正常。但是,当我用主机名替换它时,它无法连接。我使用的连接方法非常标准: 例外情况是: JAVA网。UnknownHostException:无法解析主机“myHostname”:没有与主机名关联的地址 myHostname是我的实际主机名。 当我在我的电脑上使用
我已经在kubernetes中部署了airflow,如以下链接所述:https://github.com/apache/airflow/tree/master/chart 要访问airflow UI,我可以执行以下操作:
Nginx 是一个快速的、轻量级的 Web 服务器软件, 在许多情况下它已取代了 Apache,尤其是运行 Web 应用程序的情况。 然而,其配置语言与 Apache 相比并没有做什么重大改进,仍然不够简单清晰。 此外,大多数的配置文档只有俄语版,这也就解释了为什么你看到这么多份关于 "Understanding Russian for Nginx Administrators" 的拷贝。 准备工
问题内容: 在Windows主机下安装Docker卷对我来说是一个巨大的痛苦,而且我无法使其正常工作。 目前,我得到了以下简单的Dockerfile: 当我从中构建图像并启动容器时 容器正常启动。 但是当我尝试装载一个卷时, 将显示以下消息: 该目录肯定存在于容器中,尝试其他目录不会更改结果。在主机端目录前添加斜杠也无济于事。() 例如,如何安装到? 事实证明,容器端目录必须为空,因为它有一个子目
nginx安装好之后一般会在/etc/nginx/目录下有nginx.conf文件和conf.d目录,这其实已经帮我们预留了虚拟主机要准备的内容。 看下nginx.conf文件,里面有这样一行: include /etc/nginx/conf.d/*.conf; 那么也就是说ngixn启动都会自动加载conf.d目录下以.conf结尾的所有配置文件 ok,我们直接干掉nginx.conf里面se
这是我的身份验证服务和部署。 那是我的入口文件。 当我运行Commnand:时,我收到的消息是: StartHost失败,但将重试:设置:获取ssh主机端口:获取“minikube”的端口22:docker container inspect-f“'{(index(index.NetworkSettings.Ports“22/tcp”)0).HostPort}}'”minikube:退出状态1 <