伪静态常见问题解答


不懂建站却略懂SEO的朋友一定知道伪静态这个词吧 , 静态的页面相对动态利于搜索引擎优化 , 但是伪静态的好处、伪静态的规则怎么写、伪静态是什么意思可能还是有很多朋友不知道 。

伪静态常见问题解答

文章插图
这是伪静态
伪静态是什么意思?伪静态页面相对纯静态页面来讲 , 通常我们是为了利于搜索引擎优化 , 将文章生成静态页面 , 但是有的朋友想让自己的页面实时生成新的数据 , 所以运用了动态的脚本 , 但是又不想损失了搜索引擎友好这一面 , 所以产生了伪静态这一技术 。既实现了实时展现自己网站页面的最新数据 , 同时又能够利于搜索引擎优化 。就是展示出来的是以html一类的静态页面形式 , 但其实是用ASP一类的动态脚本来处理的 。
静态与动态的区别静态页面:我们可以从RUL上面看出 , 伪静态是以html、htm以及目录结尾的为静态页面 。
动态页面:不规则的URL , 其中URL中包含符号、结尾包含其他后缀如:index.php、index.asp等 。
伪静态页面:伪静态页面只是把URL伪装成静态页面 , 但实际页面还是为动态页面 , 之所以伪装成静态页面仅为利于搜索引擎优化 。
小结:在SEO的角度考虑 , 伪静态和静态页面的功能是相同的 , 但是伪静态本质上还是动态页面 , 所以消耗资源是和动态页面一样的 , 而且因为Rewrite服务器还需要消耗额外的资源 。
伪静态的好处从URL的角度考虑 , 我认为伪静态后的页面更利于用户来记忆 , 甚至很多网站都是伪静态URL均是根据文章的标题来拟定 , 虽然是一个小细节 , 但是从SEO角度及用户体验的角度考虑 , 这是一个不小的改动 , 当然 , 伪静态不仅是这一点好处 , 还有以下几点 。
利于搜索引擎:搜索引擎对于静态页面更容易爬取 , 搜索引擎也更喜欢静态页面 , 因为静态页面调用的数据仅为文件数据 , 而没有经过数据库来调用数据 , 所以在网站打开速度方面静态页面更有优势 , 我们模拟成静态页面 , 搜索引擎也会误以为你的网站为静态页面 。
方便用户记忆:如果是一个动态页面 , 在URL上面我们可以到处看到不一样的符号 , 用户肯定是无法记忆 , 如何我们使用伪静态的URL同时根据页面的内容来设定URL , 那么用户很快就可以记住你的URL , 同时记住你的域名 。
伪静态的坏处如同网络的好处与坏处 , 其实任何一个东西 , 均有利有弊 , 所以伪静态也类似 , 其实伪静态的坏处个人感觉超过了好处 , 但是由于现在的服务器配置相对以前较有优势 , 所以伪静态的坏处慢慢的弱化了 , 但是不表示这些坏处并不存在 。
加大服务器压力:动态页面所消耗的资源相对静态消耗的服务器资源要多 , 而伪静态就是动态页面 , 所以消耗资源是和动态页面一样的 , 而且因为Rewrite服务器还需要消耗额外的资源 。【伪静态常见问题解答】
网页打开慢:伪静态不但没有提高网站打开速度 , 因为伪静态仍然要在数据库读取数据 , 并且还要额外重写URL , 所以还会减慢网站打开速度 。
重复页面:做完伪静态后 , 你会发现 , 大部分的网站均可以通过动态URL和伪静态的URL同时打开 , 这样的页面就是重复页面 , 这里建议使用robots文件屏蔽动态页面 。
需服务器支持:做过伪静态的朋友一定知道 , 很多服务器都不支持伪静态 , 特别是香港的空间 , 所以并不是所有的服务器都支持伪静态的 , 这无形中又增加了成本 。
伪静态方法不是每一个程序的伪静态规则都是同样的方法 , 但大部分的服务器均支持htaccess文件 , 我们可以利用.htaccess文件在线生成器来制作自己网站的伪静态 , 同时下面是我提供的几个主流程序的伪静态规则 。
Discuz伪静态htaccess规则
# 将 RewriteEngine 模式打开
RewriteEngine On
# 修改以下语句中的 /discuz 为您的论坛目录地址 , 如果程序放在根目录中 , 请将 /discuz 修改为 /
RewriteBase /
# Rewrite 系统规则请勿修改
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^topic-(.+)\.html$ portal.php?mod=topic&topic=$1&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^article-([0-9]+)-([0-9]+)\.html$ portal.php?mod=view&aid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^forum-(\w+)-([0-9]+)\.html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ forum.php?mod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^group-([0-9]+)-([0-9]+)\.html$ forum.php?mod=group&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^space-(username|uid)-(.+)\.html$ home.php?mod=space&$1=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^blog-([0-9]+)-([0-9]+)\.html$ home.php?mod=space&uid=$1&do=blog&id=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^archiver/(fid|tid)-([0-9]+)\.html$ archiver/index.php?action=$1&value=https://www.hoyoh.com/xuqiu/$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ plugin.php?id=$1:$2&%1
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]