destoon之URL Rewrite(伪静态)设置方法详解

1、如果您的服务器支持.htaccess,则无需设置,网站根目录下的.htaccess已经设置好规则。
规则(参考http://download.destoon.com/rewrite/htaccess.txt)为:

# Destoon B2B Rewrite Rules
ErrorDocument 404 /404.php
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)\.(asp|aspx|asa|asax|dll|jsp|cgi|fcgi|pl)(.*)$ /404.php
RewriteRule ^(.*)/file/(.*)\.php(.*)$ /404.php
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$ $1/show.php?itemid=$2&page=$4
RewriteRule ^(.*)/list-([0-9]+)([\-])?([0-9]+)?\.html$ $1/list.php?catid=$2&page=$4
RewriteRule ^(.*)/show/([0-9]+)/([0-9]+)?([/])?$ $1/show.php?itemid=$2&page=$3
RewriteRule ^(.*)/list/([0-9]+)/([0-9]+)?([/])?$ $1/list.php?catid=$2&page=$3
RewriteRule ^(.*)/([A-za-z0-9_\-]+)-c([0-9]+)-([0-9]+)\.html$ $1/list.php?catid=$3&page=$4
RewriteRule ^(.*)/([a-z]+)/(.*)\.shtml$ $1/$2/index.php?rewrite=$3
RewriteRule ^(com)/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$ index.php?homepage=$2&file=$3&rewrite=$4
RewriteRule ^(com)/([a-z0-9_\-]+)/([a-z]+)([/])?$ index.php?homepage=$2&file=$3
RewriteRule ^(com)/([a-z0-9_\-]+)([/])?$ index.php?homepage=$2

2、如果是Apache服务器

Apache 1.x 的用户请检查 conf/httpd.conf 中是否存在如下两段代码:

LoadModule rewrite_module  libexec/mod_rewrite.so
AddModule mod_rewrite.c

Apache 2.x 的用户请检查 conf/httpd.conf 中是否存在如下一段代码:

LoadModule rewrite_module  modules/mod_rewrite.so

如果存在,且以#开头,请删除#。然后在配置文件(通常就是 conf/httpd.conf或者conf/extra/httpd-vhosts.conf)中加入如下代码。
此时请务必注意,如果网站使用通过虚拟主机来定义,请务必加到虚拟主机配置,即<VirtualHost>中去,如果加在虚拟主机配置外部将可能无法使用。改好后然后将 Apache 重启。

Apache conf文件配置(参考http://download.destoon.com/rewrite/apache.txt)规则:

# Destoon B2B Rewrite Rules
ErrorDocument 404 /404.php
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)\.(asp|aspx|asa|asax|dll|jsp|cgi|fcgi|pl)(.*)$ /404.php
RewriteRule ^(.*)/file/(.*)\.php(.*)$ /404.php
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$ $1/show.php?itemid=$2&page=$4
RewriteRule ^(.*)/list-([0-9]+)([\-])?([0-9]+)?\.html$ $1/list.php?catid=$2&page=$4
RewriteRule ^(.*)/show/([0-9]+)/([0-9]+)?([/])?$ $1/show.php?itemid=$2&page=$3
RewriteRule ^(.*)/list/([0-9]+)/([0-9]+)?([/])?$ $1/list.php?catid=$2&page=$3
RewriteRule ^(.*)/([A-za-z0-9_\-]+)-c([0-9]+)-([0-9]+)\.html$ $1/list.php?catid=$3&page=$4
RewriteRule ^(.*)/([a-z]+)/(.*)\.shtml$ $1/$2/index.php?rewrite=$3
RewriteRule ^(.*)/com/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$ $1/index.php?homepage=$2&file=$3&rewrite=$4
RewriteRule ^(.*)/com/([a-z0-9_\-]+)/([a-z]+)([/])?$ $1/index.php?homepage=$2&file=$3
RewriteRule ^(.*)/com/([a-z0-9_\-]+)([/])?$ $1/index.php?homepage=$2

3、Nginx规则(参考http://download.destoon.com/rewrite/nginx.txt):

rewrite ^/(.*)\.(asp|aspx|asa|asax|dll|jsp|cgi|fcgi|pl)(.*)$ /404.php last;
rewrite ^/(.*)/file/(.*)\.php(.*)$ /404.php last;
rewrite ^/(.*)-htm-(.*)$ /$1.php?$2 last;
rewrite ^/(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$ /$1/show.php?itemid=$2&page=$4 last;
rewrite ^/(.*)/list-([0-9]+)([\-])?([0-9]+)?\.html$ /$1/list.php?catid=$2&page=$4 last;
rewrite ^/(.*)/show/([0-9]+)/([0-9]+)?([/])?$ /$1/show.php?itemid=$2&page=$3 last;
rewrite ^/(.*)/list/([0-9]+)/([0-9]+)?([/])?$ /$1/list.php?catid=$2&page=$3 last;
rewrite ^/(.*)/([A-za-z0-9_\-]+)-c([0-9]+)-([0-9]+)\.html$ /$1/list.php?catid=$3&page=$4 last;
rewrite ^(.*)/([a-z]+)/(.*)\.shtml$ $1/$2/index.php?rewrite=$3 last;
rewrite ^/(com)/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$ /index.php?homepage=$2&file=$3&rewrite=$4 last;
rewrite ^/(com)/([a-z0-9_\-]+)/([a-z]+)([/])?$ /index.php?homepage=$2&file=$3 last;
rewrite ^/(com)/([a-z0-9_\-]+)([/])?$ /index.php?homepage=$2 last;

4、Zeus规则(参考http://download.destoon.com/rewrite/zeus.txt):

match URL into $ with ^(.*)\.(asp|aspx|asa|asax|dll|jsp|cgi|fcgi|pl)(.*)$
if matched then
 set URL = /404.php
endif
match URL into $ with ^(.*)/file/(.*)\.php(.*)$
if matched then
 set URL = /404.php
endif
match URL into $ with ^(.*)-htm-(.*)$
if matched then
 set URL = $1.php?$2
endif
match URL into $ with ^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$
if matched then
 set URL = $1/show.php?itemid=$2&page=$4
endif
match URL into $ with ^(.*)/list-([0-9]+)([\-])?([0-9]+)?\.html$
if matched then
 set URL = $1/list.php?catid=$2&page=$4
endif
match URL into $ with ^(.*)/show/([0-9]+)/([0-9]+)?([/])?$
if matched then
 set URL = $1/show.php?itemid=$2&page=$3
endif
match URL into $ with ^(.*)/list/([0-9]+)/([0-9]+)?([/])?$
if matched then
 set URL = $1/list.php?catid=$2&page=$3
endif
match URL into $ with ^(.*)/([A-za-z0-9_\-]+)-c([0-9]+)-([0-9]+)\.html$
if matched then
 set URL = $1/list.php?catid=$3&page=$4
endif
match URL into $ with ^(.*)/([a-z]+)/(.*)\.shtml$
if matched then
 set URL = $1/$2/index.php?rewrite=$3
endif
match URL into $ with ^(.*)/com/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$
if matched then
 set URL = $1/index.php?homepage=$2&file=$3&rewrite=$4
endif
match URL into $ with ^(.*)/com/([a-z0-9_\-]+)/([a-z]+)([/])?$
if matched then
 set URL = $1/index.php?homepage=$2&file=$3
endif
match URL into $ with ^(.*)/com/([a-z0-9_\-]+)([/])?$
if matched then
 set URL = $1/index.php?homepage=$2
endif

5、IIS6服务器

请下载 http://download.destoon.com/rewrite/IIS_Rewrite.zip
规则已经设置好,按readme.txt文件内容进行操作
如果网站支持httpd.ini文件,请使用如下规则(参考http://download.destoon.com/rewrite/httpd.ini):

[ISAPI_Rewrite]
# Destoon B2B www.destoon.com
# 3600 = 1 hour
CacheClockRate 3600

RepeatLimit 32

# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)\.(asp|aspx|asa|asax|dll|jsp|cgi|fcgi|pl)(.*)$ /404\.php
RewriteRule ^(.*)/file/(.*)\.php(.*)$ /404\.php
RewriteRule ^(.*)-htm-(.*)$ $1\.php\?$2
RewriteRule ^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$ $1/show\.php\?itemid=$2&page=$4
RewriteRule ^(.*)/list-([0-9]+)([\-])?([0-9]+)?\.html$ $1/list\.php\?catid=$2&page=$4
RewriteRule ^(.*)/show/([0-9]+)/([0-9]+)?([/])?$ $1/show\.php\?itemid=$2&page=$3
RewriteRule ^(.*)/list/([0-9]+)/([0-9]+)?([/])?$ $1/list\.php\?catid=$2&page=$3
RewriteRule ^(.*)/([A-za-z0-9_\-]+)-c([0-9]+)-([0-9]+)\.html$ $1/list\.php\?catid=$3&page=$4
RewriteRule ^(.*)/com/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$ $1/index\.php\?homepage=$2&file=$3&rewrite=$4
RewriteRule ^(.*)/com/([a-z0-9_\-]+)/([a-z]+)([/])?$ $1/index\.php\?homepage=$2&file=$3
RewriteRule ^(.*)/com/([a-z0-9_\-]+)([/])?$ $1/index\.php\?homepage=$2
RewriteRule ^(.*)/([a-z]+)/(.*)\.shtml$ $1/$2/index\.php\?rewrite=$3

6、IIS7服务器

规则(参考http://download.destoon.com/rewrite/web.config.txt)为:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.webServer>
	<rewrite>
   <rules>
    <rule name="destoon_rewrite_0">
      <match url="^(.*)\.(asp|aspx|asa|asax|dll|jsp|cgi|fcgi|pl)(.*)$" />
      <action type="Rewrite" url="/404.php" />
    </rule>
    <rule name="destoon_rewrite_1">
      <match url="^(.*)/file/(.*)\.php(.*)$" />
      <action type="Rewrite" url="/404.php" />
    </rule>
    <rule name="destoon_rewrite_2">
      <match url="^(.*)-htm-(.*)$" />
      <action type="Rewrite" url="{R:1}.php?{R:2}" />
    </rule>
     <rule name="destoon_rewrite_3">
     <match url="^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$" />
     <action type="Rewrite" url="{R:1}/show.php?itemid={R:2}&page={R:4}" />
    </rule>
    <rule name="destoon_rewrite_4">
     <match url="^(.*)/list-([0-9]+)([\-])?([0-9]+)?\.html$" />
     <action type="Rewrite" url="{R:1}/list.php?catid={R:2}&page={R:4}" />
    </rule>
    <rule name="destoon_rewrite_5">
     <match url="^(.*)/show/([0-9]+)/([0-9]+)?([/])?$" />
     <action type="Rewrite" url="{R:1}/show.php?itemid={R:2}&page={R:3}" />
    </rule>
    <rule name="destoon_rewrite_6">
     <match url="^(.*)/list/([0-9]+)/([0-9]+)?([/])?$" />
     <action type="Rewrite" url="{R:1}/list.php?catid={R:2}&page={R:3}" />
    </rule>
    <rule name="destoon_rewrite_7">
     <match url="^(.*)/([A-za-z0-9_\-]+)-c([0-9]+)-([0-9]+)\.html$" />
     <action type="Rewrite" url="{R:1}/list.php?catid={R:3}&page={R:4}" />
    </rule>
    <rule name="destoon_rewrite_8">
     <match url="^(com)/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$" />
     <action type="Rewrite" url="index.php?homepage={R:2}&file={R:3}&rewrite={R:4}" />
    </rule>
    <rule name="destoon_rewrite_9">
     <match url="^(com)/([a-z0-9_\-]+)/([a-z]+)([/])?$" />
     <action type="Rewrite" url="index.php?homepage={R:2}&file={R:3}" />
    </rule>
    <rule name="destoon_rewrite_10">
     <match url="^(com)/([a-z0-9_\-]+)([/])?$" />
     <action type="Rewrite" url="index.php?homepage={R:2}" />
    </rule>
    <rule name="destoon_rewrite_11">
      <match url="^([a-z]+)/(.*)\.shtml$" />
      <action type="Rewrite" url="{R:1}/index.php?rewrite={R:2}" />
    </rule>
   </rules>
  </rewrite>
 </system.webServer>
</configuration>

Rewrite生效后,请在网站后台=》网站设置=》SEO优化=》URL Rewrite,选择“开启”提交

然后进入各模块的模块设置“SEO设置”选择对应伪静态地址规则

选择“更新地址”提交即可。

(0)

相关推荐

  • Destoon实现多表查询示例

    本文示例可实现Destoon多表查询.在进行destoon二次开发的时候有很高的实用价值.具体实现方法如下: 1.模板文件部分 具体代码如下: <!--{php $tags=tag("table=destoon_member m,destoon_company c&prefix=&condition=m.userid=c.userid and c.groupid=17&pagesize=10&template=null");}--> {loo

  • destoon实现公司新闻详细页添加评论功能的方法

    本文讲述了destoon实现公司新闻详细页添加评论功能的方法,具体步骤如下: 首先找到相应的页面: template\default\homepage\new.htm   在对应的地方添加如下代码: {if $could_comment && in_array($moduleid, explode(',', $EXT['comment_module']))} <div id="comment_div" style="display:;">

  • destoon首页调用求购供应信息的地区名称的方法

    本文实例主要实现了在destoon首页调用求购供应信息的地区名称.这是destoon开发中比较实用的的一个技巧. 实现代码如下: {loop $tags $k $t} [{area_pos($t[areaid], '/', 1)}]{$t[title]} {/loop} 代码说明如下: $t[areaid], '/', 1 第二个参数是地区与子地区的分隔符 第三个参数可选:设为1只显示一级地区分类:设为2显示二级地区分类等.

  • destoon实现首页显示供应、企业、资讯条数的方法

    destoon实现首页显示供应.企业.资讯条数有多种方法,这里介绍的是直接调用php程序代码进行查询.destoon的模板里面是支持php的代码的,因此我们可以直接在模板里面查询出来即可. 实现代码如下: <ul> {php $sellcount=$db->get_one("SELECT COUNT(*) AS num FROM ".$DT_PRE."sell WHERE status=3");} <li>共有{$sellcount[n

  • destoon实现资讯信息前面调用它所属分类的方法

    有时候我们需要在一些信息前面添加他所属的分类,让他显示出来,本文介绍的方法虽然有些不具有通用性,但是可以实现这一效果,代码如下,供大家参考: <!--{php $tags=tag("moduleid=21&condition=status=3 and catid IN(263,264,249,327,11,598,599,12,238,237,265,285,328,567,570) and level=6&showcat=1&areaid=$cityid&

  • destoon实现底部添加你是第几位访问者的方法

    经常会看到一些网站有类似"您是第位访客"字样的计数统计,这里我们来实现把这个统计功能添加到destoon的底部,显示"你是第几问访问者"的效果.此处的计数器与网站流量统计有区别,记录的是刷新次数,并不是真实记录访问者的IP,对于需要真正进行统计的朋友可以进一步完善代码以满足自身需求.   下面就来说一下具体的实现方法:   打开底部footer.htm的文件,找到<a href="{$MODULE[1][linkurl]}" rel=&qu

  • destoon实现调用热门关键字的方法

    本文所述的destoon调用热门关键字的方法是根据数据库里面的保存的搜索的关键字来显示的. 每个模块下面都有各自的关键字 下面是调用的标签: <!--{tag("moduleid=$searchid&table=keyword&condition=moduleid=$searchid and status=3&pagesize=9&order=total_search desc&template=index-keyword")}-->

  • destoon数据库表说明汇总

    destoon数据库表说明汇总如下,供二次开发人员查询: 表名  注释 destoon_404 404 日志 destoon_ad 广告 destoon_ad_place 广告位 destoon_admin 管理员 destoon_admin_log 管理日志 destoon_alert 贸易提醒 destoon_announce 公告 destoon_area 地区 destoon_article_21 资讯 destoon_article_data_21 资讯内容 destoon_ask 客

  • 修改destoon会员公司的伪静态中的com目录的方法

    本文详细讲述了修改destoon会员公司伪静态地址中的com目录的方法,具有一定的实用价值.分享给大家,希望对大家destoon开发有所帮助. 一般来说,destoon企业网站的伪静态默认是com目录,要修改的话首先打开include目录下global.func.php文件 在大约892行找到: $URL = DT_PATH.'com/'.$username.'/'; 将其中的com修改为你要修改的目录. 最后修改伪静态的文件,apache和iis的都一样,打开将/com/替换成你要修改的目录名

  • destoon实现调用自增数字从1开始的方法

    本文示例讲述了destoon实现调用自增数字从1开始的方法,在进行数据调用的时候有一定的实用价值.希望对大家的destoon开发有所帮助.具体方法如下: 示例功能:destoon 调用自增数字 从1开始. 具体代码如下: <!--{php $tags=tag("moduleid=14&length=46&condition=status=3&pagesize=10&order=hits desc&template=null");}-->

随机推荐