我在做什么
3000
两个在端口上运行的 NodeJS/HTTP 服务器3001
- 使用 Nginx 代理请求
app.localhost -> localhost:3001
api.app.localhost -> localhost:3000
怎么了
curl
请求在浏览器(Chrome)上完美运行并返回正确的状态代码和 JSON 数据,但使用或 Postman 时请求失败
连接始终被拒绝。
curl http://api.app.localhost/languages
curl: (7) Failed to connect to api.codebottle.localhost port 80: Connection refused
设置
Nginx 配置
server {
listen 127.0.0.1:80;
server_name app.localhost;
location / {
proxy_pass http://localhost:3001;
proxy_set_header Host codebottle.localhost;
proxy_pass_request_headers on;
}
}
server {
listen 127.0.0.1:80;
server_name api.app.localhost;
...
}
/etc/hosts
#<ip-address> <hostname.domain.org> <hostname>
127.0.0.1 app.localhost.dev
127.0.0.1 api.app.localhost.dev
我尝试过
- 使用
--ipv4
curl
- 确保服务器以及 Nginx 正常运行
- 尝试设置不同的标题,如
Host
、Origin
和User-Agent