伪静态:即网站本身是动态网页如.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){ 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]
确保了您的服务器支持伪静态,并且把规则设置好了之后,接下来下面就是设置wordpress伪静态的方法。
wordpress网站设置伪静态有利于网站优化,并且有利于搜索引擎爬虫访问,提高网站文章收录的速度。下面我来分享一下wordpress站点伪静态设置的方法:
登陆到wordpress后台,点击左侧的设置——固定链接
选择“自定义结构”,输入伪静态规则代码。这里提供了2种方式供你参考:/%post_id%.html /%postname%.html。
本站使用的就是/%post_id%.html这样的方式,如上图所示。
评论