Nginx 配置 WordPress 的域名重定向

服务器环境

  • CentOS 6.8
  • WordPress 4.9.9
  • Nginx 1.14.2

修改 Nginx 配置文件

  1. 使用命令 sudo vi /path/to/nginx.conf 打开 Nginx 的配置文件
  2. 在对应的 server 块的 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;
}
  1. 然后在该 server 块里边添加一条额外的重写规则,不然 wordpress 的后台选项会出现404,内容如下:
rewrite /wp-adminscheme://hosturi/ permanent;

按照上面的添加完大概就像下面这个样子:

... ... 

server {
        listen      80;
        server_name youwebsite.com www.youwebsite.com *.youwebsite.com;

        location / {
            root /usr/local/nginx/html/mini-geek;
            index index.html index.php index.htm;

            # 这里是 wp 的重写规则
            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;
            }

        }

        # 这里是额外的重写规则,没有这条wp后台会出现404的报错
        rewrite /wp-admin scheme://hosturi/ permanent;

        location ~ \.php {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;
            include        site_params;
        }

    }

... ...


写在最后

最後までご覧いただいてありがとうございます~

点赞

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注