Apache的ReWrite的应用大全
日期:2007年10月12日 作者: 查看:[大字体 中字体 小字体]-
Apache的mod_rewrite是提供了强大URL操作的杀手级的模块,可以实现几乎所有你梦想的URL操作类型,其代价是你必须接受其复杂性,因为mod_rewrite的主要障碍就是初学者不容易理解和运用,即使是Apache专家有时也会发掘出mod_rewrite的新用途。
换句话说:对mod_rewrite,或者是打退堂鼓永不再用,或者是喜欢它并一生受用。
ReWrite可以应用在以下方面或者解决以下问题:
URL的规划
规范的URL
说明:
在有些网站服务器上,一个资源会拥有多个URL,在实际应用和发布中应该被使用的是规范的URL,其他的则是简写或者是内部使用的。无论用户在请求中使用什么形式的URL,他最终看见的都应该是规范的URL。
方案:
对所有的不规范的URL执行一个外部的HTTP重定向,以改变它在浏览器地址栏中的显示及其后继的请求。下例中的规则集用规范的/u/user替换/~user,并修正了/u/user所遗漏的后缀的斜杠。
代码:
RewriteRule ^/~([^/]+)/?(.*) /u/$1/$2 [R]
RewriteRule ^/([uge])/([^/]+)$ /$1/$2/ [R]
规范的主机名
说明:
...
方案:
代码:
RewriteCond %{HTTP_HOST} !^fully\.qualified\.domain\.name [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^/(.*) http://fully.qualified.domain.name:%{SERVER_PORT}/$1 [L,R]
RewriteCond %{HTTP_HOST} !^fully\.qualified\.domain\.name [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/(.*) http://fully.qualified.domain.name/$1 [L,R]
被移动过的DocumentRoot
说明:
通常,网站服务器的DocumentRoot直接对应于URL"/",但是,它常常不是处于最高一级,而可能只是众多数据池中的一个实体。比如,在Intranet站点中,有/e/www/(WWW的主页)、/e/sww/ (Intranet的主页)等等,而DocumentRoot指向了/e/www/,则必须保证此数据池中的所有内嵌的图片和其他元素对后继请求有效。
方案:
只须重定向URL /到/e/www/即可。这个方案看起来很简单,但只是有了mod_rewrite模块的支持,它才简单,因为传统的URL Aliases机制(由mod_alias及其相关模块提供)只是作了一个前缀匹配,DocumentRoot是一个对所有URL的前缀,因而无法实现这样的重定向。而用mod_rewrite的确很简单:
代码:
RewriteEngine on
RewriteRule ^/$ /e/www/ [R]
后缀斜杠的问题
说明:
每个网管对引用目录后缀斜杠的问题都有一本苦经,如果遗漏了,服务器会产生一个错误,因为如果请求是/~quux/foo而不是/~quux/foo/,服务器会去找一个叫foo的文件,而它是一个目录,所以就报错了。事实上,大多数情况下,它自己会试图修正这个错误,但是有时候需要你手工纠正,比如,在重写了许多CGI脚本中的复杂的URL以后。
方案:
解决这个微妙问题的方案是让服务器自动添加后缀的斜杠。对此,必须使用一个外部的重定向,使浏览器正确地处理后继的对诸如图片的请求。如果仅仅作一个内部的重写,可能只对目录页面有效,而对内嵌有使用相对URL的图片的页面则无效,因为浏览器有请求内嵌目标的可能。比如,如果不用外部重定向,/~quux/foo/index.html页面中对image.gif的请求,其结果将是/~quux/image.gif!。 - [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] 下一页
-
- Apache的ReWrite的应用大全 相关文章:
- ·春节新年新春对联大全
- ·香港三级片名单大全 (包括演员名单)
- ·经典歇后语大全
- ·感人情书大全-情书经典
- ·路由器安全设置详解
- ·英语格言大全
- ·古代情诗:伤感浪漫悲伤情诗大全
- ·CPU型号大全总结
- ·幻世录2魔神战争 完全物品列表 - 游戏攻略
- ·男女生英文名大全-给自己起个好名字
- Apache的ReWrite的应用大全 相关软件
- ·瑞星杀毒软件 2007 V19.32.12 完全免费版
- ·火影忍者-忍术全开
- ·Kaspersky(卡巴斯基) KIS 安全套装 V6.0.2.621 MP2 简体中文正式免激活版
- ·中国法律法规大全(电子版) V3.3
- ·生活宝典系列之——家常美食菜谱大全(完整版) V3.0.3
- ·全能音频转换通 V1.2
- ·全能格式转换(Konvertor) V3.45.1 汉化版
- ·魔法门英雄无敌3全集
- ·《暗黑破坏神2毁灭之王》v1.11地图全开工具EasyMap_v11
- ·《仙剑奇侠传2》全过程存档
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:网管利器之对抗网络钓鱼
精品推荐
热点TOP10
- ·解决与HTTP 500 – 内部服务器错误错误信息有关的问题
- ·使用Linux L2TP/IPsec VPN 服务器
- ·IIS服务器配置教程
- ·计算机群集技术概述
- ·VSFTPD配置大全
- ·板载RAID功能制作磁盘阵列并安装操作系统
- ·服务器端口大全
- ·图解win2003+iis6+php+gd2+mysql安装配置
- ·RedHat9-vsftp配置大全
- ·部署 Microsoft SQL Server 2005 群集
- ·透过局域网架设FTP服务器
- ·Apache的ReWrite的应用大全
- ·PHPMYADMIN配置
- ·安全配置服务器
- ·Exim+MySQL+Courier-IMAP配置实录
- ·php.ini详解
- ·8G服务器磁盘控制卡识别及Windows 2003驱动制作
- ·图文详解 Windows 2003服务器集群安装
- ·在xp和2003下察看端口对应的进程
- ·Apache URL重定向指南
特别推荐
- ·服务器常见软件故障分析及解决
- ·五招技巧让远程维护与管理更省心
- ·改变Windows 2000 server服务器连接数
- ·在xp和2003下察看端口对应的进程
- ·Linux服务器日志管理详解
- ·架设自己的WEB服务器-动态域名解析服务
- ·双管齐下打造最佳PHP MYSQL组合
- ·ASP.NET木马及Webshell安全解决方案
- ·IIS中的MIME类型
- ·个人Internet网站创建过程详解
- ·如何实现自动登录Linux
- ·Apache的ReWrite的应用大全
- ·Windows打印服务器升级、迁移和互操作
- ·使用Windows Server 2003搭建安全服务器
- ·在Windows 2000 Server中配置TCP/IP协议
- ·Linux的安全漏洞与防范措施
- ·Windows平台下DB2数据库安装全图解
- ·了解Debian 系统
- ·利用ADMmutate测试NIDS
- ·图解win2003+iis6+php+gd2+mysql安装配置
