【问题标题】:Redirect from nginx to wordpress with apache under other domain在其他域下使用 apache 从 nginx 重定向到 wordpress
【发布时间】:2015-11-25 19:19:50
【问题描述】:

我有一个在 nginx 下运行的项目(www.xxx.com)。在这个项目中,我需要在 Apache 下的文件夹 (www.yyy.com/blog) 下将一个子目录 (www.xxx.com/blog) 指向另一个域中的 Wordpress 博客。

我将 WP 更改为使用永久链接运行,但没有配置 .htaccess。我使用以下代码在 nginx 上实现了它:

location /blog {
 try_files $uri $uri/ /blog/index.php?q=$request_uri;
 proxy_pass http://static.gri.fo/blog;
}

它会在 nginx/1.4.6 (Ubuntu) 中产生 500 内部服务器错误

在它返回的日志中:

2015/08/31 13:19:39 [错误] 7565#0: *1 重写或内部重定向周期,同时内部重定向到“/blog/index.php”,客户端:179.219.42.26,服务器:www。 xxx.com.br,请求:“GET /blog/ HTTP/1.1”,主机:“www.xxx.com.br”

有办法解决吗?

【问题讨论】:

    标签: php wordpress apache nginx


    【解决方案1】:

    您的问题不是很清楚您要做什么,但也许以下就是您所追求的?

    location /blog {
        proxy_pass http://static.gri.fo/blog/index.php?q=$request_uri;
    }
    

    【讨论】:

      【解决方案2】:

      您不能在同一个位置块中同时运行try_filesproxy_pass,正如另一个人所提到的,您的问题对于您要做什么并不是特别清楚。

      可能性一:

      尝试简单地将来自 www.yyy.com/blog

      的传入请求提供给 www.xxx.com/blog
      location /blog {
          proxy_pass http://yyy.com/blog;
      }
      

      可能性2:

      如果在 www.xxx.com/blog 中找不到文件,则尝试将来自 www.yyy.com/blog 的传入请求提供给 www.xxx.com/blog 这就是您组合try_filesproxy_pass 的方式 您将proxy_pass 分离到一个命名的位置块中,并从try_files 指令中调用它

      location /blog {
          try_files $uri $uri/ @proxy;
      }
      location @proxy {
          proxy_pass http://yyy.com/blog;
      }
      

      【讨论】:

        猜你喜欢
        • 2018-07-17
        • 2014-01-13
        • 1970-01-01
        • 2018-12-06
        • 2012-11-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-13
        • 1970-01-01
        相关资源
        最近更新 更多