nginx - Nginx 代理到 CFSS 连接被拒绝
问题描述
我有CFSSL服务在 kubernetes 上的 port 上运行8888
。我可以从另一个直接引用的 pod 访问它的 API cfssl:8888
。我想通过 Nginx 公开它,我让 Nginx 在单独的 pod 中运行,配置如下
upstream cfssl {
server cfssl:8888;
}
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name localhost;
location / {
proxy_pass http://cfssl;
proxy_set_header Host cfssl;
}
}
但是这个 Nginx 配置不起作用,我可以cfssl:8888
在 Nginx pod 中访问,但是当我这样做时curl localhost:80
curl: (7) Failed to connect to localhost port 80: Connection refused
这个设置有什么问题?
解决方案
在 location 块内你没有提到端口
location / {
proxy_pass http://cfssl;
它应该是这样的
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name localhost;
location / {
proxy_pass http://cfssl:8888;
proxy_set_header Host cfssl;
}
推荐阅读
- sympy - 评估 sympy 函数的解对
- python - Python 上的图形 plt.plot 不会显示
- javascript - 无法读取未定义的 javascript 数组的属性“长度”
- java - 如何让 Avro SchemaBuilder 在两个“记录”之间构建映射模式?
- php - 在 PHP 中调用扩展可变参数函数的父方法?
- c# - 如何将 txt azure blobs 下载为纯文本文件?
- python - 匹配具有相似列的两个数据框
- php - 如何使用通配符来允许特定域 CORS?
- dependent-type - 在依赖类型的编程语言中,Type-in-Type 是否适用于编程?
- node.js - Puppeteer 在 Node 10 运行时中无法使用谷歌云功能