apacherewrite:Apache的ReWrite的应用来源: 发布时间:星期日, 2009年1月4日 浏览:12次 评论:0
对象比如对/u/user/foo/执行swwidx超链是这样:
代码: /ernal/cgi/user/swwidx?i=/u/user/foo/ 其缺点是必须同时硬编码超链中区域和CGI路径如果重组了这个区域就需要花费大量时间来修改各个超链 方案: 方案是用个特殊新URL格式自动拼装CGI参数: 代码: RewriteRule ^/([uge])/([^/]+)(/?.*)/\* /ernal/cgi/user/wwwidx?i=/$1/$2$3/ RewriteRule ^/([uge])/([^/]+)(/?.*):log /ernal/cgi/user/wwwlog?f=/$1/$2$3 现在这个搜索到/u/user/foo/超链简化成了: 代码: HREF="*" 它会被内部地自动转换为 代码: /ernal/cgi/user/wwwidx?i=/u/user/foo/ 如此可以为使用:log超链拼装出CGI参数 从静态到动态 介绍说明: 如何无缝转换静态页面foo.html为动态foo.cgi而不为浏览器/用户所察觉 方案: 只须重写此URL为CGI-script以强制为可以作为CGI-script运行正确MIME类型如此对/~quux/foo.html请求其实会执行/~quux/foo.cgi 代码: RewriteEngine _disibledevent= 1; # read URLs one per line from stdin and # generate substitution URL on stdout while (<> ) { s|^foo/|bar/|; pr $_; } 这是个作演示例子只是把所有URL /~quux/foo/...重写为/~quux/bar/...而事实上可以把它修改以获得任何你需要功能但是要注意虽然般用户都可以使用可是只有系统管理员才可以定义这样地图 0
相关文章
读者评论发表评论 |
|