Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从nginx重定向到其他域下带有apache的wordpress_Php_Wordpress_Apache_Nginx - Fatal编程技术网

Php 从nginx重定向到其他域下带有apache的wordpress

Php 从nginx重定向到其他域下带有apache的wordpress,php,wordpress,apache,nginx,Php,Wordpress,Apache,Nginx,我有一个在nginx下运行的项目(www.xxx.com)。在这个项目中,我需要将一个子目录(www.xxx.com/blog)指向Apache下的文件夹(www.yyy.com/blog)下其他域中也包含Wordpress的博客 我将WP更改为与永久链接一起运行,并且没有配置.htaccess。我用以下代码在nginx上实现了它: location /blog { try_files $uri $uri/ /blog/index.php?q=$request_uri; proxy_pass

我有一个在nginx下运行的项目(www.xxx.com)。在这个项目中,我需要将一个子目录(www.xxx.com/blog)指向Apache下的文件夹(www.yyy.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”


有什么办法可以解决吗?

你的问题不是很清楚你想做什么,但也许以下就是你想要的

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

您不能在同一个位置块中同时运行
try\u文件
proxy\u pass
,正如另一位用户所提到的,您的问题并不十分清楚您要做什么

可能性1: 试图从
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\u文件
proxy\u pass
proxy\u pass
分离到一个命名的位置块中,并从
try\u files
指令中调用该块

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