ACCP6 Ajax 课堂笔记1


1、对全局使用水印,修改配置文件
    做法示例:在App_Code下新建Watermark.cs文件,实现IHttpHandler,只有是C#类能注册

    ashx文件,是供页面直接访问的
    配置:
        <system.web>

    <httpHandlers>

<!-- 配置全局水印 -->

<add verb="*" path="*.jpg" validate="false" type="Watermark"/>

    </httpHandlers>

       </system.web>

2、URL重写ISAPI
    HttpModule,实现接口IHttpModule,并添加配置
    <system.web>

<httpModules>

<add  name="TestHttpModule" type="TestHttpModule" />

</httpModules>

    </system.web>

3、URL重写举例
    <system.web>

<urlMappings enabled="true">

<add url="~/games/id/3.aspx" mappedUrl="~Default.aspx" />

</urlMappings>

    </system.web>
    当我们访问/games/id/3.aspx页面的时候,就会跳转到Default.aspx页面

4、通过HttpModule截取请求地址,实现URL重写
    HttpApplication app = sender as HttpApplication;

    string url = app.Request.RawUrl;

    if(url.LastIndexOf("games/id/3.aspx") > 0)

    {

app.Server.Transfer("~/Default.aspx");

    } 
    可以使用正则来判断,以及截取

6、页面静态化
    伪静态做法:利用HttpHandler做一个地址映射,将/book/[bookId].html这种路径在服务器内重写为/BookDetail.aspx?bid=[bookId]
    真静态:提前将动态页面静态化成/book/[bookId].html 这样的路径文件,提前静态化批处理
    折中做法:用户访问/book/[bookId].html 地址的时候,先判断是否存在静态化文件,不存在,就静态化,存在,直接转向静态文件
    
    做法:
        1、编辑好静态页面模板
        2、编辑配置文件
            <httpHandlers>
                <add verb="*"  path="Books/*.html"  type="HtmlHandler"  />
            </httpHandlers>
        3、
    

7、总结:
    感觉在IIS中把网站添加为应用程序的时候,好多功能都不能实现,因为所有的URL的开头都变了

    

知识共享许可协议
《ACCP6 Ajax 课堂笔记1》常伟华 创作。
采用 知识共享 署名-相同方式共享 3.0 中国大陆 许可协议进行许可。
  • 多说评论
  • 签名
  • 新浪微博
  • 默认评论
  • Tab Header 5

0 条评论 / 点击此处发表评论

Tab Content 5

开发技术


开发平台和工具

sitemap     159.04ms