Apache的ReWrite的应用mod_rewrite模块使用(10)
来源:asp之家 时间:2010-04-04 18:44:00
新的MIME类型,新的服务
说明:
网上有许多很技巧的CGI程序,但是用法晦涩,许多网管弃之不用。即使是Apache的MEME类型的动作处理器,也仅仅在CGI程序不需要在其输入中包含特殊URL(PATH_INFO和QUERY_STRINGS)时才很好用。首先,配置一种新的后缀为.scgi(for secure CGI)文件类型,其处理器是很常见的cgiwrap程序。问题是:如果使用同类URL规划(见上述),而用户宿主目录中的一个文件的URL是/u/user/foo/bar.scgi,可是cgiwrap要求的URL的格式是/~user/foo/bar.scgi/,以下规则解决了这个问题:
代码:
RewriteRule ^/[uge]/([^/]+)/.www/(.+).scgi(.*) ...
... /internal/cgi/user/cgiwrap/~$1/$2.scgi$3 [NS,T=application/x-http-cgi]
另外,假设需要使用其他程序:wwwlog(显示access.log中的一个URL子树)和wwwidx(对一个URL子树运行Glimpse),则必须对这些程序提供URL区域作为其操作对象。比如,对/u/user/foo/执行swwidx程序的超链是这样的:
代码:
/internal/cgi/user/swwidx?i=/u/user/foo/
其缺点是,必须同时硬编码超链中的区域和CGI的路径,如果重组了这个区域,就需要花费大量时间来修改各个超链。
方案:
方案是用一个特殊的新的URL格式,自动拼装CGI参数:
代码:
RewriteRule ^/([uge])/([^/]+)(/?.*)/* /internal/cgi/user/wwwidx?i=/$1/$2$3/
RewriteRule ^/([uge])/([^/]+)(/?.*):log /internal/cgi/user/wwwlog?f=/$1/$2$3
现在,这个搜索到/u/user/foo/的超链简化成了:
代码:
HREF="*"
它会被内部地自动转换为
代码:
/internal/cgi/user/wwwidx?i=/u/user/foo/
如此,可以为使用:log的超链,拼装出调用CGI程序的参数。
标签:apache,mod_rewrite,url,rewrite,虚拟主机,服务器
0
投稿
猜你喜欢
决战web2.0时代 13种常用的网络营销策略
2009-02-17 09:49:00
眼睛视点的搜索引擎优化 浏览视觉与F形状
2009-01-19 16:44:00
docker搭建redis三主三从集群的实现步骤
2021-05-10 09:25:56
支付宝购买godaddy域名实测 全程图文解说
2010-01-04 14:25:00
VMware虚拟机中的linux复制粘贴详解
2022-05-06 11:43:28
国外虚拟主机选购指南
2008-04-21 12:18:00
SEO就像品味美女的过程
2007-08-05 13:12:00
详解VMware12安装centOS8的配置图文教程(vm虚拟机安装centos8教程)
2021-08-23 21:25:11
Centos8搭建本地Web服务器的实现步骤
2023-08-05 09:17:54
最新的排名秘方 构建你的互联网品牌建设
2009-03-03 12:00:00
架设某大型网站服务器之全部过程网站
2007-09-13 13:40:00
利用“第一个广告单元”,有效提高广告单价(CPC)
2008-12-12 09:43:00
李想:把用户的价值放在第一位
2007-09-25 15:53:00
Godaddy主机空间IP被封了怎么办?
2010-04-08 12:47:00
V5shop:少就是多 企业B2C切勿贪大求全
2010-04-02 11:38:00
IP PV你更注重谁?
2008-04-16 14:26:00
Windows2003优化方法简介(下)(1)
2010-05-16 18:07:00
apache虚拟主机配置: 二级目录访问跳转到其他根文件夹
2023-08-29 08:11:08
Apache服务器高级设置指南(5)
2010-04-04 18:12:00
做站要做具有“生命力”的网站
2008-06-06 11:26:00