分类
WordPress教程

WordPress教程 – Apache和Nginx环境下伪静态的配置

为什么要使用伪静态

静态页面对SEO有很大益处,对服务器的负载很小,但静态页面的缺点是不能随时更新,因此伪静态页面的主要作用就是让搜索引擎把自己的网页当做静态页面来处理,有利于SEO,同时又能动态更新网站内容。

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;
    }
}

星九

时间会带来惊喜~

发表评论

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

19 − 16 =