destoon在各个服务器下设置URL Rewrite(伪静态)的方法


Posted in Servers onJune 21, 2014

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)中加入如下代码。
此时请务必注意,如果网站使用通过虚拟主机来定义,请务必加到虚拟主机配置,即中去,如果加在虚拟主机配置外部将可能无法使用。改好后然后将 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">
    </action></match></rule>
    <rule name="destoon_rewrite_1">
      <match url="^(.*)/file/(.*)\.php(.*)$">
      <action type="Rewrite" url="/404.php">
    </action></match></rule>
    <rule name="destoon_rewrite_2">
      <match url="^(.*)-htm-(.*)$">
      <action type="Rewrite" url="{R:1}.php?{R:2}">
    </action></match></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}&amp;page={R:4}">
    </action></match></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}&amp;page={R:4}">
    </action></match></rule>
    <rule name="destoon_rewrite_5">
     <match url="^(.*)/show/([0-9]+)/([0-9]+)?([/])?$">
     <action type="Rewrite" url="{R:1}/show.php?itemid={R:2}&amp;page={R:3}">
    </action></match></rule>
    <rule name="destoon_rewrite_6">
     <match url="^(.*)/list/([0-9]+)/([0-9]+)?([/])?$">
     <action type="Rewrite" url="{R:1}/list.php?catid={R:2}&amp;page={R:3}">
    </action></match></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}&amp;page={R:4}">
    </action></match></rule>
    <rule name="destoon_rewrite_8">
     <match url="^(com)/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$">
     <action type="Rewrite" url="index.php?homepage={R:2}&amp;file={R:3}&amp;rewrite={R:4}">
    </action></match></rule>
    <rule name="destoon_rewrite_9">
     <match url="^(com)/([a-z0-9_\-]+)/([a-z]+)([/])?$">
     <action type="Rewrite" url="index.php?homepage={R:2}&amp;file={R:3}">
    </action></match></rule>
    <rule name="destoon_rewrite_10">
     <match url="^(com)/([a-z0-9_\-]+)([/])?$">
     <action type="Rewrite" url="index.php?homepage={R:2}">
    </action></match></rule>
    <rule name="destoon_rewrite_11">
      <match url="^([a-z]+)/(.*)\.shtml$">
      <action type="Rewrite" url="{R:1}/index.php?rewrite={R:2}">
    </action></match></rule>
   </rules>
  </rewrite>		
 </system.webserver>
</configuration>

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

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

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


Tags in this post...

Servers 相关文章推荐
nginx基于域名,端口,不同IP的虚拟主机设置的实现
Mar 31 Servers
Nginx的反向代理实例详解
Mar 31 Servers
Nginx如何配置Http、Https、WS、WSS的方法步骤
May 11 Servers
nginx+lua单机上万并发的实现
May 31 Servers
详解nginx进程锁的实现
Jun 14 Servers
nginx location 带斜杠【 / 】与不带的区别
Apr 13 Servers
nginx lua 操作 mysql
May 15 Servers
Nginx利用Logrotate实现日志分割
May 20 Servers
阿里云服务器Ubuntu 20.04上安装Odoo 15
May 20 Servers
V Rising 服务器搭建图文教程
Jun 16 Servers
Windows server 2022创建创建林、域树、子域的步骤
Jun 25 Servers
Apache SkyWalking 监控 MySQL Server 实战解析
Sep 23 Servers
Nginx实现反向代理
Sep 20 #Servers
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
nginx 设置多个站跨域
Mar 09 #Servers
使用Apache的rewrite
Mar 09 #Servers
Apache站点配置SSL强制跳转443
Mar 09 #Servers
Apache压力测试工具的安装使用
Nginx同一个域名配置多个项目的实现方法
Mar 31 #Servers
You might like
PHP 木马攻击防御技巧
2009/06/13 PHP
PHP Class&amp;Object -- PHP 自排序二叉树的深入解析
2013/06/25 PHP
深入解析fsockopen与pfsockopen的区别
2013/07/05 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
2014/10/14 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
laravel 中某一字段自增、自减的例子
2019/10/11 PHP
js/jQuery对象互转(快速操作dom元素)
2013/02/04 Javascript
基于js disabled=&quot;false&quot;不起作用的解决办法
2013/06/26 Javascript
JS网页播放声音实现代码兼容各种浏览器
2013/09/22 Javascript
javascript的回调函数应用示例
2014/02/20 Javascript
js点击选择文本的方法
2015/02/09 Javascript
JavaScript中创建字典对象(dictionary)实例
2015/03/31 Javascript
jQuery实现的多张图无缝滚动效果【测试可用】
2016/09/12 Javascript
ES6新特性六:promise对象实例详解
2017/04/21 Javascript
jQuery导航条固定定位效果实例代码
2017/05/26 jQuery
Angular4实现动态添加删除表单输入框功能
2017/08/11 Javascript
jQuery+datatables插件实现ajax加载数据与增删改查功能示例
2018/04/17 jQuery
JS实现的简单下拉框联动功能示例
2018/05/11 Javascript
基于JS实现一个随机生成验证码功能
2019/05/29 Javascript
Vue.js计算机属性computed和methods方法详解
2019/10/12 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
2020/11/13 Javascript
python中map()函数的使用方法示例
2017/09/29 Python
使用 Python 实现文件递归遍历的三种方式
2018/07/18 Python
python 字符串只保留汉字的方法
2018/11/16 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
django和vue实现数据交互的方法
2019/08/21 Python
Python实现一个论文下载器的过程
2021/01/18 Python
美国运动鞋和运动服零售商:Footaction
2017/04/07 全球购物
Ivory Isle Designs美国/加拿大:婚礼和活动文具公司
2018/08/21 全球购物
毕业生个人投资创业计划书
2014/01/04 职场文书
部队学习十八大感言
2014/01/11 职场文书
亲属关系公证书样本
2015/01/23 职场文书
分享:关于学习的励志名言赏析
2019/08/16 职场文书
解决Redis启动警告问题
2022/02/24 Redis
css3带你实现3D转换效果
2022/02/24 HTML / CSS