伪静态:即网站本身是动态网页如.php、.asp、.aspx等格式,而这类网页还带“?”加参数来读取数据库。开启伪静态后,动态网页即被转换重写成静态网页类型页面。
WordPress和其它网站系统不一样,其它网站系统基本都带有生成静态页面功能。但Wp只能使用伪静态。
现在的主机基本都会支持伪静态功能,只需在空间后台伪静态功能,选择网站系统,空间就会支持该系统的伪静态。
如何判读空间是否支持伪静态。在网站后台:设置-固定链接,选择第一个除外,看网站其它页面是否出现404,如果是,则空间不支持伪静态。
只要空间支持伪静态重写URL Rewrite功能,根据服务器主机空间环境,只需加入下列伪静态规则即可。
Apache伪静态规则
新建一个 txt 文件,将下面的代码添加到文件中,然后另存为.htaccess文件,上传到WordPress站点的根目录即可。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Nginx规则
在Nginx中的server模块配置如下内容,打开 nginx.conf 或者某个站点的配置环境,例如 /usr/local/nginx/conf/yzipi.conf,在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){
IIS伪静态规则rewrite (.*) /index.php;
}
}
IIS伪静态规则
新建一个 txt 文件,将下面的代码添加到文件中,然后另存为 httpd.ini 文件,上传到WordPress站点的根目录即可。
[ISAPI_Rewrite]
# Defend your computer from some worm attacks
#RewriteRule .*(?:global.asa|default\.ida|root\.exe|\.\.).* . [F,I,O]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through
RewriteRule /tag/(.*) /index\.php\?tag=$1
RewriteRule /software-files/(.*) /software-files/$1 [L]
RewriteRule /images/(.*) /images/$1 [L]
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]
参考链接Apache Module mod_rewrite
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持NICE源码。