apache中mod rewrite重写规则及示例详细讲解:
apache中mod_rewrite的修正符:
F(force URL to be forbidden)禁用URL,返回403HTTP状态码。
R[=code](force redirect) 强制外部重定向
强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。
G(force URL to be gone) 强制URL为GONE,返回410HTTP状态码。
P(force proxy) 强制使用代理转发。
L(last rule) 表明当前规则是最后一条规则,停止分析以后规则的重写。
N(next round) 重新从第一条规则开始运行重写过程。
C(chained with next rule) 与下一条规则关联
如果规则匹配则正常处理,该标志无效,如果不匹配,那么下面所有关联的规则都跳过。
T=MIME-type(force MIME type) 强制MIME类型
NS (used only if no internal sub-request) 只用于不是内部子请求
NC(no case) 不区分大小写
QSA(query string append) 追加请求字符串
NE(no URI escaping of output) 不在输出转义特殊字符
例如:RewriteRule /foo/(.*) /bar?arg=P1\%3d$1 [R,NE] 能正确的将/foo/zoo转换成/bar?arg=P1=zed
PT(pass through to next handler) 传递给下一个处理
例如:
RewriteRule ^/abc(.*) /def$1 [PT] # 将会交给/def规则处理
Alias /def /ghi
S=num(skip next rule(s)) 跳过num条规则
E=VAR:VAL(set environment variable) 设置环境变量
rewrite时服务器变量:
HTTP headers:HTTP_USER_AGENT, HTTP_REFERER, HTTP_COOKIE, HTTP_HOST, HTTP_ACCEPT
connection & request: REMOTE_ADDR, QUERY_STRING
server internals: DOCUMENT_ROOT, SERVER_PORT, SERVER_PROTOCOL
system stuff: TIME_YEAR, TIME_MON, TIME_DAY
Rewrite规则表达式的说明:
. 匹配任何单字符
[chars] 匹配字符串:chars
[^chars] 不匹配字符串:chars
text1|text2 可选择的字符串:text1或text2
? 匹配0到1个字符
* 匹配0到多个字符
+ 匹配1到多个字符
^ 字符串开始标志
$ 字符串结束标志
\n 转义符标志
反向引用 $N 用于 RewriteRule 中匹配的变量调用(0 /test/admin.php
RewriteRule ([^/]+)\.html$ /test/$1.php [L]
#for example: /test/admin.html => /test/admin.php
实例2:
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^MSIE [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Opera [NC]
RewriteRule ^.* - [F,L] 这里”-”表示没有替换,浏览器为IE和Opera的访客将被禁止访问。
实例3:
限制目录只能显示图片
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !^.*\.(gif|jpg|jpeg|png|swf)$
RewriteRule .*$ - [F,L]
分享到:
相关推荐
这个就是我写出的程序 在VS中没问题在IIS中就有问题了
* Download http://cesars.users.phpclasses.org/url_rewriter * Edit url_handler.php * Add a new rule $url->add_rule("foo.php","/entry-[:number1].html"); * Change all your links foo....
iis rewriter,重写URL,绝对能用!
Hex rewriter. For PIC developing and PicKit2
新云4.0伪静态规则和绿色Rewriter
nasm+FloppyWriter+Rewriter+ramdisknt15等资源。亲测好用
IIS服务器安装和使用URL重写工具-URL Rewrite,内附离线安装包和使用配置说明
SOAR(SQL Optimizer And Rewriter)是一个对SQL进行优化和改写的自动化工具。由小米人工智能与云平台的数据库团队开发与维护。 功能特点 跨平台支持(支持Linux,Mac环境,Windows环境理论上也支持,不过未全面测试...
的基于DOM的实现。 与原始版本不同,此实现将解析整个DOM(由提供),并针对此表示形式运行选择器。 因此,它速度较慢,占用更多内存,... import { ParsedHTMLRewriter } from '@worker-tools/parsed-html-rewriter'
Rewriter是一个Web扩展,它使用用户定义的规则来重写网页上的某些内容。 您可以将其用作简单的单词替换器,自定义adblocker或诅咒过滤器。 一切都被允许,您是所编写规则的主人。 Rewriter还接受正则表达式以在页面...
只需选择即可重写任何文本。 只需单击一下即可重写任何网站上的任何文本。 您所要做的就是选择要旋转的文本,然后打开选项菜单。 之后,单击“重写选定的文本”选项。 这会自动打开一个指向我们免费文章重写工具的新...
重写器ChromeRewriter是一个Web扩展,它使用用户定义的规则来重写网页上的某些内容。
文字改写 一个小的WebExtension,用于将页面中的可自定义模式重写为其他形式。 受启发,主要为个人娱乐而创建。 默认情况下,这提供了“ mispell”->“ misspell”替换。 该插件支持任何Javascript正则表达式,包括...
语言:English 重写URL - rabbit URL Rewritriter将允许您重写任何URL。 - 您可以使用“从”URL模式中的“正则表达式匹配”组和“目标”URL模式中的“从”ull模式中的匹配组。... - 根据您编写时测试模式测试面板。...
Rewriter是一个Web扩展,它使用用户定义的规则来重写网页上的某些内容。 您可以将其用作简单的单词替换器,自定义adblocker或诅咒过滤器。 一切都被允许,您是所编写规则的主人。 Rewriter还接受正则表达式以在页面...
语言:English 重写内容以使其一次单击即可100%唯一 使用这个免费的文章重写器,以独特的方式重写相同的内容。 下面提供了使用此工具的分步过程-1.... 2.然后单击扩展图标。 3.之后,单击重写文章。...
替换页面上指定的短语 任意替换页面上的任何可见文本。 重写页面中的可定制模式。 受XKCD#1288和“云对接”的启发,主要是出于个人娱乐目的而创建。 默认情况下提供明智的“ mispell”->“ misspell”替换。...
在访问网页时重写使用不同主机的URL。 用于访问网页时重写主机名的扩展名。无论访问方法如何,都将重写主机名,单击链接和写入URL都将起作用。...在开始工作之前,需要从扩展按钮或选项页面配置扩展。...
PG源码分析
Unicode Rewriter 是一种 Java 工具,可将 MP3 文件的 ID3 标签转换为 Unicode。 重新转换的 MP3 文件可以由 iTunes 和 Rhythmbox 处理。