4 人参与回答
WordPress和其它网站系统不一样,其它网站系统基本都带有生成静态页面功能。但Wp只能使用伪静态。
现在的主机基本都会支持伪静态功能,只需在空间后台伪静态功能,选择网站系统,空间就会支持该系统的伪静态。
如何判读空间是否支持伪静态。在网站后台:设置-固定链接,选择第一个除外,看网站其它页面是否出现404,如果是,则空间不支持伪静态。
只要空间支持伪静态重写URL Rewrite功能,根据服务器主机空间环境,只需加入下列伪静态规则即可。
1Apache伪静态规则
新建一个 txt 文件,将下面的代码添加到文件中,然后另存为.htaccess文件,上传到WordPress站点的根目录即可。
<IfModule mod_
RewriteEngine On
RewriteBase /
RewriteRule ^index\.PHP$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . / [L]
</IfModule>
2Nginx规则
在Nginx中的server模块配置如下内容,打开 或者某个站点的配置环境,例如 /usr/local/nginx/conf/,在server{ } 大括号里面添加下面的代码。
location / {
if (-f $request_filename/){
rewrite (.*) $1/ break;
}
if (-f $request_filename/){
rewrite (.*) $1/
}
if (!-f $request_filename){
IIS伪静态规则rewrite (.*) /
}
}
3IIS伪静态规则
新建一个 txt 文件,将下面的代码添加到文件中,然后另存为 文件,上传到WordPress站点的根目录即可。
[ISAPI_Rewrite]
# Defend your computer from some worm attacks
#RewriteRule .*(?:|default\.ida|root\.exe|\.\.).* . [F,I,O]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect and 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 / / [L]
RewriteRule / / [L]
# For file-based wordpress content ( theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via
RewriteRule ^/$ / [L]
RewriteRule /(.*) /$1 [L]