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]
分享到:
相关推荐
【标题】"ReWriter"指的是一个程序或者模块,它的主要功能可能是处理URL重写或内容重写。在Web开发中,URL重写是一项常见的技术,它允许开发者将复杂的URL转换为简洁、用户友好的格式,或者对搜索引擎优化(SEO)...
标题中的“rewriter 离线版.rar”指的是一个用于IIS服务器的URL重写工具的离线安装包。URL重写是Web服务器中的一个重要功能,它允许网站管理员通过定义规则来改变请求的URL,从而优化网站的结构、提高SEO效果、隐藏...
* 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....
SQL optimizer and rewriter. - SQL 优化器、重写器(辅助 SQL 调优)。SQL optimizer and rewriter. - SQL 优化器、重写器(辅助 SQL 调优)。SQL optimizer and rewriter. - SQL 优化器、重写器(辅助 SQL 调优)。SQL ...
"Rewriter"在这里通常指的是URL重写工具,它允许管理员通过修改HTTP服务器的配置(如Apache的.htaccess文件或IIS的web.config文件),来实现URL的动态到静态的转换。在新云4.0系统中,这个功能可能由`Rewrite.dll`...
这些资源主要涉及的是在操作系统开发或者低级别编程中的一些工具,包括`nasm`、`FloppyWriter`、`Rewriter`以及`ramdisknt15`。下面将详细解释这些工具及其在IT领域的应用。 1. **nasm (Netwide Assembler)**:nasm...
"Rewriter-chrome" 是一个基于 Chrome 浏览器的 Web 扩展,其核心功能是允许用户自定义规则来修改网页内容。"Rewriter" 这个名字暗示了它的主要功能是对网页进行某种形式的文本或元素的替换、调整或过滤,以满足用户...
这种技术可以隐藏实际的动态页面路径,使其看起来像是静态页面,或者将长的参数字符串转换成更容易理解和记忆的形式。 **二、IIS URL Rewrite模块的安装** IIS URL Rewrite模块可以通过微软的Web平台安装器(Web ...
标题中的"HEX-rewriter.rar_hex"暗示了一个与HEX文件格式相关的工具或程序,可能用于修改或重写十六进制数据。这种工具在嵌入式系统开发中尤其常见,特别是涉及到微控制器(如PIC)编程时。PicKit2是Microchip公司...
SOAR(SQL Optimizer And Rewriter)是一个对SQL进行优化和改写的自动化工具。由小米人工智能与云平台的数据库团队开发与维护。 功能特点 跨平台支持(支持Linux,Mac环境,Windows环境理论上也支持,不过未全面测试...
Rewriter是一个Web扩展,它使用用户定义的规则来重写网页上的某些内容。 您可以将其用作简单的单词替换器,自定义adblocker或诅咒过滤器。 一切都被允许,您是所编写规则的主人。 Rewriter还接受正则表达式以在页面...
首先,我们来看项目名称“class-rewriter-3.330.0.zip”,这表明这是一个软件类重写工具的版本号为3.330.0的压缩包。通常,类重写工具用于修改或增强已存在的Java类,这在理解和调试代码或者实现特定功能时非常有用...
只需选择即可重写任何文本。 只需单击一下即可重写任何网站上的任何文本。 您所要做的就是选择要旋转的文本,然后打开选项菜单。 之后,单击“重写选定的文本”选项。 这会自动打开一个指向我们免费文章重写工具的新...
文字改写 一个小的WebExtension,用于将页面中的可自定义模式重写为其他形式。 受启发,主要为个人娱乐而创建。 默认情况下,这提供了“ mispell”->“ misspell”替换。 该插件支持任何Javascript正则表达式,包括...
替换页面上指定的短语 任意替换页面上的任何可见文本。 重写页面中的可定制模式。 受XKCD#1288和“云对接”的启发,主要是出于个人娱乐目的而创建。 默认情况下提供明智的“ mispell”->“ misspell”替换。...
语言:English 重写URL - rabbit URL Rewritriter将允许您重写任何URL。 - 您可以使用“从”URL模式中的“正则表达式匹配”组和“目标”URL模式中的“从”ull模式中的匹配组。... - 根据您编写时测试模式测试面板。...
Rewriter是一个Web扩展,它使用用户定义的规则来重写网页上的某些内容。 您可以将其用作简单的单词替换器,自定义adblocker或诅咒过滤器。 一切都被允许,您是所编写规则的主人。 Rewriter还接受正则表达式以在页面...
语言:English 重写内容以使其一次单击即可100%唯一 使用这个免费的文章重写器,以独特的方式重写相同的内容。 下面提供了使用此工具的分步过程-1.... 2.然后单击扩展图标。 3.之后,单击重写文章。...
在访问网页时重写使用不同主机的URL。 用于访问网页时重写主机名的扩展名。无论访问方法如何,都将重写主机名,单击链接和写入URL都将起作用。...在开始工作之前,需要从扩展按钮或选项页面配置扩展。...
它通过配置规则,隐藏实际的参数,使URL看起来更加简洁和可读。这对于提高用户体验和搜索引擎排名至关重要。 2. **Java实现**: UrlRewriter Java是用Java编写的,这意味着它可以轻松地集成到任何基于Java的Web...