wordpress配置固定链接nginx访问404问题解决方法

WordPress支持使用固定链接,但是在ngnix环境下,访问页面后出现404,

其实官方是有文档说明的,需要单独写配置,

我这里用的是phpstudy,找到目录文件 phpStudy_64\Extensions\Nginx1.15.11\conf\vhosts\XXXX.com_80.conf XXXX就是自己的网站

我这边配置的示例代码如下:

server {
listen 80;
server_name www.chaichunyan.com;

access_log /var/log/nginx/access.log main;

location / {
root /www/data/xxx;
index index.php index.html index.htm;

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;

location ~ \.php$ {
root /www/data/xxx;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

 

主要是在 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;