|
伪静态网站对seo优化有着极大的好处,很多朋友想知道伪静态网站的规则,下面简单分析一下:
目前网上流行的各种程序在iis下的规则和设置方法:
1、shopex4.8
按照默认路径安装后,打开C:\Program Files\Helicon\ISAPI_Rewrite3\httpd.conf
加入以下规则:
# Helicon ISAPI_Rewrite configuration file
# Version 3.1.0.56
RewriteBase /
RewriteCond %{REQUEST_FILENAME} \.(html|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|cgi|shtml|shtm|phtm|xml)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1 [L]
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/archiver/((fid|tid)-[0-9]+\.html)\?*(.*)$ $1/archiver/index\.php\?$2&$4
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/forumdisplay\.php\?fid=$2&page=$3&$4
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/viewthread\.php\?tid=$2&extra=page\%3D$4&page=$3&$4
RewriteRule ^(.*)/space-(username|uid)-(.+)\.html\?*(.*)$ $1/space\.php\?$2=$3&$4
RewriteRule ^(.*)/tag-(.+)\.html\?*(.*)$ $1/tag\.php\?name=$2&$3
下面就需要配置iis为shopex4.8加载组件了:
打开iis,右键你的站点属性--ISAPI 筛选器--添加--筛选器名称是ISAPI_Rewrite3 --可执行文件就是ISAPI_Rewrite.dll的路径,比如C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_Rewrite.dll
最后重启iis
当然你可以把ISAPI_Rewrite3目录放入站点根目录下,但记得要给一个users读权限。如果都设置了还不行,可为网站跟目录加一个“network service”的读权限。
注意:有些服务器或者vps有做权限的,安装后httpd.conf可能只有everyone和system的权限,如果修改不了文件就添加一个administrator的权限。
2、Discuz6+ecshop
规则如下:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteCond %{HTTP_HOST}
RewriteRule /index.html /index.php [I]
RewriteRule /default.html /index.php [I]
RewriteRule /feed.xml /feed.php [I]
RewriteRule /category-([0-9]+).html /category\.php\?id=$1 [I]
RewriteRule /category-([0-9]+)-([0-9]+).html /category\.php\?id=$1&page=$2 [I]
RewriteRule /category-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+).html /category\.php\?id=$1&page=$2&sort=$3&order=$4 [I]
RewriteRule /goods-([0-9]+)\.html /goods\.php\?id=$1 [I]
RewriteRule /article_cat-([0-9]+).html /article_cat\.php\?id=$1 [I]
RewriteRule /article_cat-([0-9]+)-([0-9]+).html /article_cat\.php\?id=$1&page=$2 [I]
RewriteRule /article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+).html /article_cat\.php\?id=$1&page=$2&sort=$3&order=$4 [I]
RewriteRule /article-([0-9]+).html /article\.php\?id=$1 [I]
RewriteRule /search-b([0-9]+) /search\.php\?brand=$1 [I]
RewriteRule /search-([0-9]+)-([^-]*)-([a-zA-Z]+)-k(.*).html /search\.php\?page=$1&sort=$2&order=$3&keywords=$4 [I]
RewriteRule /search-([0-9]+)-([^-]*)-([a-zA-Z]+)-b([0-9]*)-k(.*)-s([0-9]*)-l([0-9]*).html /search\.php\?page=$1&sort=$2&order=$3&brand=$4&keywords=$5&min_price=$6&max_price=$7 [I]
#discuz
RewriteRule ^(.*)/archiver/((fid|tid)-[\w\-]+\.html)\?*(.*)$ $1/archiver/index\.php\?$2&$4
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/forumdisplay\.php\?fid=$2&page=$3&$4
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/viewthread\.php\?tid=$2&extra=page\%3D$4&page=$3&$4
RewriteRule ^(.*)/space-(username|uid)-(.+)\.html\?*(.*)$ $1/space\.php\?$2=$3&$4
RewriteRule ^(.*)/tag-(.+)\.html\?*(.*)$ $1/tag\.php\?name=$2&$3
然后配置iis加载组件,方法类似shopex4.8:
打开iis,右键你的站点属性--ISAPI 筛选器--添加--筛选器名称是Rewrite --可执行文件就是Rewrite.dll的路径,比如E:\home\LocalUser\rewrite\Rewrite.dll
最后重启iis
3、discuz
规则如下:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/archiver/([a-z0-9\-]+\.html)\?*(.*)$ $1/archiver/index\.php\?$2&$3
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/forumdisplay\.php\?fid=$2&page=$3&$4
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/viewthread\.php\?tid=$2&extra=page\%3D$4&page=$3&$4
RewriteRule ^(.*)/profile-(username|uid)-(.+)\.html\?*(.*)$ $1/viewpro\.php\?$2=$3&$4
RewriteRule ^(.*)/space-(username|uid)-(.+)\.html\?*(.*)$ $1/space\.php\?$2=$3&$4
打开iis,右键你的站点属性--ISAPI 筛选器--添加--筛选器名称是Rewrite --可执行文件就是Rewrite.dll的路径,比如E:\home\LocalUser\rewrite\Rewrite.dll
最后重启iis
4、ecshop
规则如下:
[ISAPI_Rewrite]
# ECSHOP
RewriteRule /index.html /index.php [I]
RewriteRule /default.html /index.php [I]
RewriteRule /ecshop/feed.xml /ecshop/feed.php [I]
#RewriteRule /ecshop/category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ /ecshop/category.php?id=$1&brand=$2&page=$3&sort=$4&order=$5 [I]
RewriteRule ^(.*)/category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ $1/category\.php\?id=$2&brand=$3&page=$4&sort=$5&order=$6 [I]
#RewriteRule /ecshop/category-([0-9]+)-b([0-9]+)-([0-9]+)(.*)\.html$ /ecshop/category.php?id=$1&brand=$2&page=$3 [I]
RewriteRule ^(.*)/category-([0-9]+)-b([0-9]+)-([0-9]+)(.*)\.html$ $1/category\.php\?id=$2&brand=$3&page=$4 [I]
#RewriteRule /ecshop/category-([0-9]+)-b([0-9]+)(.*)\.html$ /ecshop/category.php?id=$1&brand=$2 [I]
RewriteRule ^(.*)/category-([0-9]+)-b([0-9]+)(.*)\.html$ $1/category\.php\?id=$2&brand=$3 [I]
#RewriteRule /ecshop/category-([0-9]+)(.*)\.html$ /ecshop/category.php?id=$1 [I]
RewriteRule ^(.*)/category-([0-9]+)(.*)\.html$ $1/category\.php\?id=$2 [I]
#RewriteRule /ecshop/goods-([0-9]+)(.*)\.html$ /ecshop/goods.php?id=$1 [I]
RewriteRule ^(.*)/goods-([0-9]+)(.*)\.html$ $1/goods\.php\?id=$2
#RewriteRule /ecshop/article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ /ecshop/article_cat.php?id=$1&page=$2&sort=$3&order=$4 [I]
RewriteRule ^(.*)/article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$ $1/article_cat\.php\?id=$2&page=$3&sort=$4&order=$5 [I]
#RewriteRule /ecshop/article_cat-([0-9]+)-([0-9]+)(.*)\.html$ /ecshop/article_cat.php?id=$1&page=$2 [I]
RewriteRule ^(.*)/article_cat-([0-9]+)-([0-9]+)(.*)\.html$ $1/article_cat\.php\?id=$2&page=$3 [I]
#RewriteRule /ecshop/article_cat-([0-9]+)(.*)\.html$ /ecshop/article_cat.php?id=$1 [I]
RewriteRule ^(.*)/article_cat-([0-9]+)(.*)\.html$ $1/article_cat\.php\?id=$2 [I]
#RewriteRule /ecshop/article-([0-9]+)(.*)\.html$ /ecshop/article.php?id=$1 [I]
RewriteRule ^(.*)/article-([0-9]+)(.*)\.html$ $1/article\.php\?id=$2 [I]
#RewriteRule /ecshop/brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)\.html /ecshop/brand.php?id=$1&cat=$2&page=$3&sort=$4&order=$5 [I]
RewriteRule ^(.*)/brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html $1/brand\.php\?id=$2&cat=$3&page=$4&sort=$5&order=$6 [I]
#RewriteRule /ecshop/brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*)\.html /ecshop/brand.php?id=$1&cat=$2&page=$3 [I]
RewriteRule ^(.*)/brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*)\.html $1/brand\.php\?id=$2&cat=$3&page=$4 [I]
#RewriteRule /ecshop/brand-([0-9]+)-c([0-9]+)(.*)\.html /ecshop/brand.php?id=$1&cat=$2 [I]
RewriteRule ^(.*)/brand-([0-9]+)-c([0-9]+)(.*)\.html $1/brand\.php\?id=$2&cat=$3 [I]
#RewriteRule /ecshop/brand-([0-9]+)(.*)\.html /ecshop/brand.php?id=$1 [I]
RewriteRule ^(.*)/brand-([0-9]+)(.*)\.html $1/brand\.php\?id=$2 [I]
#RewriteRule /ecshop/tag-(.*)\.html /ecshop/search.php?keywords=$1 [I]
RewriteRule ^(.*)/tag-(.*)\.html $1/search\.php\?keywords=$2 [I]
5、dvbbs
规则如下:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Block external access to the httpd.ini and httpd.parse.errors files
RewriteRule /httpd(?:\.ini|\.parse\.errors).* / [F,I,O]
# Block external access to the Helper ISAPI Extension
RewriteRule .*\.isrwhlp / [F,I,O]
# 重写index.asp
RewriteRule /(你的论坛所在目录,以根目录起)/index_(\d+)_(.*)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/index\.asp\?boardid=$1&action=$2&topicmode=$3&page=$4 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/index_(\d+)_(\d+)_(.*)\.html /(你的论坛所在目录,以根目录起)/index\.asp\?boardid=$1&page=$2&action=$3 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/index_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/index\.asp\?boardid=$1&topicmode=$2 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/index_(\d+)_(\d+)_\.html /(你的论坛所在目录,以根目录起)/index\.asp\?boardid=$1&page=$2 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/index_(\d+)__\.html /(你的论坛所在目录,以根目录起)/index\.asp\?boardid=$1 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/index_(\d+)\.html /(你的论坛所在目录,以根目录起)/index\.asp\?boardid=$1 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/index\.html(.*) /(你的论坛所在目录,以根目录起)/index.asp [N,I]
# 重写dispbbs.asp
RewriteRule /(你的论坛所在目录,以根目录起)/dispbbs_(\d+)_(\d+)_(\d+)_skin(\d+)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dispbbs\.asp\?boardid=$1&replyid=$2&id=$3&skin=$4&page=$5&star=$6 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dispbbs_(\d+)_(\d+)_(\d+)_skin(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dispbbs\.asp\?boardid=$1&replyid=$2&id=$3&skin=$4&star=$5 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dispbbs_(\d+)_(\d+)_(\d+)_skin(\d+)\.html /(你的论坛所在目录,以根目录起)/dispbbs.asp\?boardID=$1&replyid=$2&ID=$3&skin=$4 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dispbbs_(\d+)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dispbbs.asp\?boardID=$1&ID=$2&page=$3 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dispbbs_(\d+)_(\d+)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dispbbs.asp\?boardID=$1&ID=$2&star=$3&page=$4 [N,I]
# 重写dv_rss.asp
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)_(\d+)_(\d+)_(\d+)_(\d+)_count(\d+)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1&boardid=$2&id=$3&page=$4&star=$5&count=$6 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)_(\d+)_(\d+)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1&boardid=$2&id=$3&page=$4&star=$5 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)_(\d+)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1&boardid=$2&id=$3&page=$4 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)_(\d+)_(\d+)_count(\d+)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1&boardid=$2&page=$3&count=$4 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)_(\d+)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1&boardid=$2&page=S3 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)_(\d+)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1&boardid=$2 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss_(.*)\.html /(你的论坛所在目录,以根目录起)/dv_rss.asp\?s=$1 [N,I]
RewriteRule /(你的论坛所在目录,以根目录起)/dv_rss(.*)\.html(.*) /(你的论坛所在目录,以根目录起)/dv_rss.asp [N,I]
注意:
1、isapi_rewrite3.0和isapi_rewrite2.0不可随意混用。并不建议采用安装组件的方式,直接使用dll组件和规则就可以了。
2、rewrite.dll以及规则可以放入任何一个目录,但记得要给该目录一个users的读权限。
3、shopex4.8和其它程序有点不同,shopex4.8只能使用最新的rewirte3.0,老版本的不支持RewriteCond语法。
4、如果是用的安装组件的方式,可能会对其它程序比如discuz、phpwind之类的有影响,那么就打开iis,
右键网站属性--ISAPI 筛选器--删除isapi_rewrite这项,因为这里是对整个iis进行全局设置的,会造成其它程序的冲突
5、因为shopex4.8目前很流行但又采用了不同的规则方式,所以规则最好别和其它程序在一起使用,而且是要为使用4.8的站点进行单独的isapi筛选设置,shopex也必须安装在根目录才可以,因为RewriteBase / 指定了在根目录,无法为每个客户单独配置这个文件。
以上只是给出了最常用的shopex4.8和discuz6以及discuz+ecshop的规则以及配置方法,其它几种都大同小异了,主要是规则的不同,也都将做打包。
因为篇幅和限制原因,已经把shopex4.7/4.8、discuz6/NT2.5、ecshop、dvbbs、phpwind、wordpress、Discuz6+ecshop等伪静态规则和组件打包,如有需要可到我公司官方网站进行查询下载。
以上设置都是针对租用了独立服务器和vps的,在使用虚拟主机的就不用看了,因为作为服务商是应该做好了的,但目前还没有出现对所有流行程序都支持的吧。华夏名网已经在最新的管理系统内对所有型号主机集成了伪静态支持。如有不明白的也可随时来咨询并提供免费预装。
下载地址:
|
|