导语:如果在nginx服务器上,WordPress在访问admin-ajax.php出现 502错误,一般来说是虚拟主机配置文件写得有问题。环境为:nginx+php-fpm;
原因
一般来说,我们需要在nginx服务器的配置文件上增加以下内容就可以了。
wdcp虚拟主机配置文件一般放在/www/wdlinux/nginx-1.10.3/conf/vhost/example.conf。
我们需要增加以下代码:
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
整个文件内容看起来这样:
index index.html index.php index.htm;
error_page 400 /errpage/400.html;
error_page 403 /errpage/403.html;
error_page 404 /errpage/404.html;
error_page 503 /errpage/503.html;
location / {
# wordpress
try_files $uri $uri/ /index.php?$args;
}
# wordpress
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
location ~ \.php(.*)$ {
fastcgi_pass unix:/tmp/php-70-cgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $DOCUMENT_ROOT$fastcgi_script_name;
fastcgi_param PATH_INFO $2;
include fcgi.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 1d;
}
location ~ .*\.(js|css|htm)?$ {
expires 12h;
}
location ~ /\.ht {
deny all;
}
结束
你学会了吗?如果是直接安装的nginx服务器,增加注释为wordpress的两段内容即可。注意,我这里只提供了一种502错误的解决方法,还有可能这个文件的502是其他的问题。