如何使用nginx将请求代理到内部服务器?

我在http://localhost:3000上设置了一个Web服务器来查看我的存储库(Gitalist实例),我想使用Nginx设置代理.

我希望在接收DOMAIN / git /等URI时,请求被代理到我的存储库视图.

我当前的Nginx配置已声明如下:

location /git {
    proxy_pass http://localhost:3000/;
}

请求确实被代理到服务器,但是没有图像/链接或css可以被解析,因为它们例如指向“http://localhost:3000/logo.png”.

编辑

如果我proxy_pass到实际的服务器地址它确实工作:

 location /git {
        proxy_pass              http://192.168.1.111:3000/;
 }

但是应该有一种在代理时隐藏实际服务器地址的方法.

最佳答案
在URI是绝对的情况下,解决方案可能是使用Nginx HTTPSubModule或使用其mod_proxy_html模块切换到Apache.他们都能够修改从后端服务器收到的响应并进行一些替换.

相关文章

一、Linux下Nginx的安装 1.去官网 http://nginx.org/download/下载对应的Nginx安装包,推荐使...
一、空格:默认匹配、普通匹配 location / { root /home; } 二、= :精确匹配(表示匹配到 /home/resou...
``` nginx -c 配置文件路径 ``` ``` /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.con...
前言 nginx可所谓是如今最好用的软件级别的负载均衡了。通过nginx的高性能,并发能力强,占用内存下的特...
1.ngnix概念 Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄...
博客园从今天上午就开始报502错误 , 他的原因还不知道 , 暂时先说下我们遇到502的排查情况 最大的可能性...