【问题标题】:Nginx rewrite root urlNginx 重写根 url
【发布时间】:2013-10-30 11:59:08
【问题描述】:

我正在使用 nginx 代理,并试图用我的服务器 url 替换基本 url。例如,我想通过我的localhost:8000 代理www.google.com,并将所有基本 url 实例 (www.google.com) 替换为 (localhost:8000)。

到目前为止我的 nginx.conf:

    server {
        listen       8080;
        server_name  localhost;

   location / {
    proxy_pass http://www.google.com/;
    rewrite ^/.google.com /localhost:8080 last;
}
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

【问题讨论】:

    标签: nginx reverse-proxy proxypass


    【解决方案1】:

    只需删除 'location /' 块中的重写指令。并添加break;

    location / {
        proxy_pass http://www.google.com/;
        break;
    }
    

    【讨论】:

    • 用我的服务器名替换了一些基本的 url。如何用我的服务器名称 (localhost:8080) 替换 www.google.com 的所有实例。谢谢!
    • location / 已经匹配所有网址,不太明白您的意思是“用我的服务器名替换了一些基本网址”。你试过上面的例子吗?
    • 是的,我尝试了上面的示例,但是某些 url 的链接是 www.google.com/foo,而其他链接是 www.localhost:8080/foo。我需要页面上的所有链接指向www.localhost:8080/foo
    • 如果没有其他dispatch配置应该没问题。你重启了还是重新加载了nginx?
    猜你喜欢
    • 2016-06-27
    • 2019-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-07
    • 2014-05-18
    • 2011-12-10
    • 1970-01-01
    相关资源
    最近更新 更多