下面是我的Nginx关键配置,意思是文件和目录交Nginx处理,对于PHP和不存在的文件转发给后端处理。
location / {
try_files $uri $uri/ @
apache;
}
location @
apache {
proxy_pass
http://www;
}
location ~ .+\.php.*$ {
proxy_pass
http://www;
}
按照上面Nginx配置,wordpress首页会出现循环重定向的提示(Firefox),其他页面正常,但是其他程序的首页却也正常的。
解决方法一:
如果我在wordpress主题文件夹的functions.php文件中添加以下语句,则问题解决。
remove_filter('template_redirect', 'redirect_canonical');
解决方法二:
在原Nginx配置文件中增加下面内容,意思是直接将首页转发给后端处理。
location = / {
proxy_pass
http://www;
}
方法一 需要修改每个站点的WP文件,显然不妥。
方法二 也不是我想要的,我想要的是文件和目录都交Nginx处理,后端只处理PHP文件。
问:
1、WP首页为什么会出现循环重定向这问题?
2、有没办法不修改WP文件,只调整Nginx配置,实现Nginx前端处理所有文件,后端只处理PHP文件