Php 从nginx重定向到其他域下带有apache的wordpress
我有一个在nginx下运行的项目(www.xxx.com)。在这个项目中,我需要将一个子目录(www.xxx.com/blog)指向Apache下的文件夹(www.yyy.com/blog)下其他域中也包含Wordpress的博客 我将WP更改为与永久链接一起运行,并且没有配置.htaccess。我用以下代码在nginx上实现了它: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
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;
}