AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 396595
Accepted
Evgenii Iablokov
Evgenii Iablokov
Asked: 2012-06-08 11:14:01 +0800 CST2012-06-08 11:14:01 +0800 CST 2012-06-08 11:14:01 +0800 CST

Nginx 代理域到另一个域,不更改 URL

  • 772

我的问题在主题中。我有一个域,这是它的 nginx 配置:

server {
listen 80;
server_name connect3.domain.ru www.connect3.domain.ru;

access_log /var/log/nginx/connect3.domain.ru.access.log;
error_log /var/log/nginx/connect3.domain.ru.error.log;

root /home/httpd/vhosts/html;
index index.html index.htm index.php;

location ~* \.(avi|bin|bmp|css|dmg|doc|docx|dpkg|exe|flv|gif|htm|html|ico|ics|img|jpeg|jpg|js|m2a|m2v|mov|mp3|mp4|mpeg|mpg|msi|pdf|pkg|png|pps|ppt|pptx|ps|rar|rss|rtf|swf|tif|tiff|txt|wmv|xhtml|xls|xml|zip)$ {
    root /home/httpd/vhosts/html;
    access_log off;
    expires 1d;
}

location ~ /\.(git|ht|svn) {
    deny all;
}

location / {
    #rewrite ^ http://connect2.domain.ru/;
    proxy_pass http://127.0.0.1:8080/;
    proxy_redirect off;
    proxy_hide_header "Cache-Control";
    add_header Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0";
    proxy_hide_header "Pragma";
    add_header Pragma "no-cache";
    expires -1;
    add_header Last-Modified $sent_http_Expires;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

我需要将 connect3.domain.ru 主机代理到 connect2.domain.ru,但浏览器地址栏中的 URL 没有更改。我注释掉的重写行可以解决这个问题,但它只是一个重写,所以我不能保留相同的 URL。

我知道这个问题很简单,但请帮忙。谢谢你。

nginx proxypass
  • 3 3 个回答
  • 101679 Views

3 个回答

  • Voted
  1. Best Answer
    VBart
    2012-06-08T13:19:24+08:002012-06-08T13:19:24+08:00

    你设置:

    proxy_set_header Host $host;
    

    你要:

    proxy_set_header Host connect2.domain.ru;
    
    • 36
  2. cadmi
    2013-04-22T00:35:38+08:002013-04-22T00:35:38+08:00

    关于端口 8080 的心灵感应已被关闭,因为您没有向我们展示完整的配置。

    server {
        listen 80;
        server_name connect3.domain.ru www.connect3.domain.ru;
    
        location / {
            proxy_pass http://connect2.domain.ru;
            proxy_set_header Host connect2.domain.ru;
        }
    }
    
    • 13
  3. Antiarchitect
    2013-06-28T02:10:11+08:002013-06-28T02:10:11+08:00

    所以我认为 - 如果我正确理解问题,这里是解决方案:

     # backend.wants.this.server.com
     # browser.shows.this.server.com
    
    server {
      listen 80;
      server_name browser.shows.this.server.com;
    
      location / {
         proxy_set_header Host backend.wants.this.server.com;
         proxy_redirect http://backend.wants.this.server.com/ http://browser.shows.this.server.com/; 
      }
    }
    
    • 12

相关问题

  • Gzip 与反向代理缓存

  • nginx 作为代理的行为

  • Nginx 学习资源 [关闭]

  • 提供 70,000 个静态文件 (jpg) 的最佳方式?

  • 在 Apache、LightTPD 和 Nginx Web 服务器上提供 PHP 5.x 应用程序的现状?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve