张文保的博客
张文保 · Paul Zhang

Engineering the Future
功不唐捐,玉汝于成

htaccess 伪静态 WordPress Nginx

WordPress在Nginx下开启伪静态后台页面404路径缺少wp-admin问题

WordPress默认的伪静态规则文件是.htaccess,.htaccess文件是在Apache环境下用的,而Nginx环境并不支持.htaccess,是通过.conf文件来配置规则。Nginx下的WordPress伪静态规则配置如下:

location / {
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}

 

加入上面的代码到网站对应的.conf文件里后,前台页面确实实现了伪静态url访问,但进入后台发现不能访问,后台所有的url地址中原来的/wp-admin/不见了,解决办法是在上面的代码后面再加入一行斜杠重定向规则,具体代码如下:

location / {
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

 

相关文章
本文标题:《WordPress在Nginx下开启伪静态后台页面404路径缺少wp-admin问题》
网址:https://zhangwenbao.com/wordpress-nginx-rewrite-404-wp-admin.html
作者:张文保
发布时间:2017-01-19
许可协议:CC BY-NC-SA 4.0
发表新评论
SSL安全认证