WordPress伪静态规则设置:Apache和Nginx以及二级目录规则

有的小伙伴刚开始使用WordPress的时候,对WordPress的固定链接不是很熟悉,比如希望网站链接、分类…

IMG_38259

有的小伙伴刚开始使用WordPress的时候,对WordPress的固定链接不是很熟悉,比如希望网站链接、分类为自己想要的样式,直接修改后,发现无法访问,直接显示404。其实这都是WordPress伪静态规则造成的,而WordPress的伪静态规则是根据服务器环境来设置的,不同的PHP环境有不同的伪静态设置方法,常见的PHP环境有 Apache和Nginx ,以下搬主题分别就这两种环境做伪静态设置。

一、Apache环境伪静态规则

首先要开启apache的url_rewrite模块(一般默认都是开启的),也就是在httpd.conf中去掉这句话的注释LoadModule rewrite_module modules/mod_rewrite.so,httpd.conf中找到AllowOverride,把AllowOverride None修改成AllowOverride all

网站根目录下要有 .htaccess 文件,然后将下面的代码复制进去。

<ifmodule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</ifmodule>

如果WordPress在Apache环境下二级目录建站伪静态操作方式同上。

二、Nginx环境伪静态规则

操作方法:以下代码加入到网站的配置文件 xxxx.conf 中的 server{} 中。

根目录下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;
    }
}

二级目录下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;
    }
}

值得一提的是,现在有很多服务器面板如:BT宝塔面板,可以直接勾选就能设置伪静态,如果你正在用,就可以不用继续看了。

什么?还没安装BT宝塔面板?点击进行下载安装

宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取

三、BT宝塔面板环境下伪静态一键设置

首先进入宝塔面板 -> 网站 -> 找到有问题网站的域名,点击右侧的设置选项。-> 伪静态 -> 列表中选择 wordpress 或 wp2 -> 保存。

IMG_38259

再重新刷新自己的WordPress网站,是不是显示正常了。

类别:WordPress 进阶教程

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT