程序员人生 网站导航

动易系统URL重写简单使用说明

栏目:DedeCMS时间:2013-10-14 18:36:15

网(LieHuo.Net)教程  首先跟大家介绍下什么是URL重写:URL重写是截取传入WEB请求并自动将请求重定向到其它URL的过程。比如浏览器发送请求“Item/1.aspx”,服务器自动将请求定向为“Item.aspx?id=1”。

那它有什么优点:

    可以缩短URL,隐藏实际记录经提高安全性;

    易于用户记忆和键入;

    易于被搜索引擎收录。

在SiteFactory2.5中新增加的这个URL重写的功能,可能大家在使用的时候并没有发现此功能,这个功能在后台操作界面中没有直接的体现出来,而是写在的程序里的。那么我们要怎么使用这个功能呢?接下来一步一步跟大家讲述下。

首先来看默认情况下访问一个内容页的RUL:


图片点击可在新窗口打开查看

图1

我们看图1的URL结尾部分是:Item/60.aspx,这个URL实际访问的地址就是Item.aspx?id=60。下面两个是改过之后的RUL:


图片点击可在新窗口打开查看

图2


图片点击可在新窗口打开查看

图3

图2和图3所显示的URL都能和图1的URL访问的实际地址是一样的,全都是Item.aspx?id=60,都很好的隐藏了实际地址。

这里到底改变了什么,让URL改成这样呢?打开安装SiteFactory的根目录下的Config/UrlRewriteSettings.config文件,用工具打开它,我们可以看到如下内容:


图片点击可在新窗口打开查看

图4

UrlRewriteSettings.config文件中有很多个<add>节点。里面已经提供了所有SiteFactory各个不同URL配置的类型了。比如:<add>节点中name属性为RewriteItemd节点,它是用于信息内容页的URL配置。具体每个<add>节点对应的配置如下:

Name属性名

配置的类型

RewriteItemd

信息内容页的URL配置

RewriteItemPage

信息内容页分页的URL配置

RewritePrint

打印页的URL配置

RewritePrintPage

打印页分页的URL配置

RewriteCategory

节点页的URL配置

RewriteIndexCategory

首页的URL配置

RewriteCategoryPage

节点分页的URL配置

RewriteSpecial

专题页的URL配置

RewriteSpecialPage

专题页分页的URL配置

RewriteSpecialCategory

专题类别的URL配置

RewriteSpecialCategoryPage

专题类别分页的URL配置

RewriteSpecialCategoryIndex

专题类别首页的URL配置

RewriteSpecialCategoryIndexPage

专题类别首页分页的URL配置

表1

我们再回到图4中,图中有两个红色框。

第一个框中内容为:

virtualUrl="^~/Item/(d+).aspx"   这个就是在浏览器中输入的URL。

第二个框中内容为:

destinati  就是实际访问的地址。

图2所呈现的URL只要修改virtualUrl属性值就可以了(注意整个文件只要修改<add>节点里的virtualUrl属性值就可以了,其它的请不要做任何修改),修改virtualUrl属性值也是有讲究的,注意不要改动Item 前面的“^~/”,还有“(d+),“^~/”可以获得应用程序的根目录, “(d+)” 可以获得访问实际地址的ID参数值,也就是信息ID。

图2所示的URL就是把virtualUrl属性值修改成:virtualUrl=" ^~/Content/(d+).aspx"。图3所示的URL:virtualUrl=" ^~/Content/(d+).Html"。

注意:改成图3所示的URL,还的配置下IIS,因为后缀名修改了,IIS对这个URL是不会交由ASP.NET的aspnet_isapi.dll处理的,所以程序部署到IIS的时候可能会出现404错误,但是你可以为你的站点添加一个通配符,添加扩展名的映射:


可执行文件:C:WINDOWSMicrosoft.NETFrameworkv2.0.50727aspnet_isapi.dll

请求路径:*

名称:随意

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐