当前位置: 首页 > 编程笔记 >

Hypertext Access file 流行的重写标志

江天宇
2023-03-14
本文向大家介绍Hypertext Access file 流行的重写标志,包括了Hypertext Access file 流行的重写标志的使用技巧和注意事项,需要的朋友参考一下

示例

F |禁止

与相似Deny,此标志强制服务器立即向请求的浏览器或客户端返回403禁止状态代码。

示例:拒绝访问以结尾的请求exe:

RewriteRule .exe$ - [F]

G |消失

如果所请求的资源过去是可用的,但不再可用,则可以使用此标志强制服务器立即为请求的浏览器或客户端返回410 Gone状态代码。

示例:告诉访客不再存在旧产品:

RewriteRule ^old-product.html$ - [G]

L | last

在大多数情况下,除之外.htaccess,此标志指示mod_rewrite停止处理当前条件/规则集,方式last与break(分别为Perl和C)相同。

但是,在.htaccess或<Directory>上下文中,使用RewriteRule带有该标志重写的请求将被传递回URL解析引擎以进行进一步处理。这样,重写的URI可能由相同的上下文处理,并且可能会进一步更改。

通常的建议是使用该END标志不仅可以停止处理当前条件/规则集,还可以防止在这些上下文中进行任何进一步的重写。

注意:上面讨论的F和G标志都L隐式使用,因此您无需单独指定它们。

N |下一个

该标志将从头开始重新运行重写过程,从第一个条件/规则集开始重新开始。这次,要匹配的URL不再是原始URI,而是上一个规则集返回的重写的URI。使用此标志重新启动重写过程。

警告:请谨慎使用此标志,因为它可能导致无限循环!

NC |无案

这指示mod_rewrite匹配Pattern的RewriteRule而不区分大小写。为了澄清,MyIndex.html并且myindex.html将由模块同样的事情算是。此外,此标志允许您a-z代替A-Za-z正则表达式使用。

R |重定向

此标志用于将HTTP重定向响应发送到发出请求的浏览器/客户端。

默认情况下,如果未提供任何代码,则将返回带有302 Found(类似于临时重定向)状态代码的重定向响应。如果您希望使用更永久的重定向,则应使用302(301移动永久)状态代码。

通常,此标志只能使用300-399范围内的状态码。如果使用了超出此范围的状态码(完全可以接受),则替换字符串将被丢弃,并且重写将停止,就像使用了该L标志一样。在某些情况下,即使请求指向现有资源,这也是强制404 Not Found响应的便捷方法

示例:发出302找到的重定向响应:

RewriteRule ^bus$ /train [R,L]

示例:发出301移动永久重定向响应:

RewriteRule ^speed-train$ /hyperloop [R=301,L]

示例:强制未找到404

RewriteRule ^blip$ - [R=404,L]
           

 类似资料:
  • 现在准备要构建一个工具,用来把前面idata.txt里的数据按group分行显示,就像这样: 2 9 10 3 1 2 3 我们可以借助语法分析树的Listener机制来对词法分析结束后生成的记号流进行改写,我们不需要实现每一个Listener接口方法,只需要在捕获到group的时候把换行符插到它末尾就行。实现改写的代码如下所示: import org.antlr.v4.runtime.Toke

  • 问题内容: 我知道Java中有一个函数可以使用method 将标准输出流设置为任何用户定义的值。 但是,是否有任何方法可以将标准输出重置为先前存储的标准输出还是标准输出? 问题答案: 您可以通过持有标准的文件描述符。要重置标准以打印到控制台,您可以 另一种方法是仅保留原始对象,如下所示:

  • 没有办法(不管它有多“黑”)检测Java的已写入,以便在发生这种情况时能够执行逻辑?-我目前正在使用(我们称之为)的一个自定义子类,它在

  • 我需要重写执行程序的执行方法,我需要改变线程超过核心池大小的行为,只有当队列已满时才会创建。 然而,在实时应用程序中,这种行为是不可取的,因为它会导致队列中存在的任务无休止地等待。 我已将execute方法更改如下: 尝试实现:核心线程-

  • 我对apache Spark是新手。我试图运行https://github.com/prabeesh/sparktwitteranalysis/tree/0.2.0示例,但控制台给出了以下错误: 我已经使用启动了服务器,并通过sbt/sbt包编译了代码 并使用/删除了代码 这个错误的原因是什么?如何解决它 提前谢了。

  • 问题内容: 基本上,这就是我要实现的目标。 classname @ address(?)[原始],对象的名称,对象的年龄 问题,被递归调用。 我不能打电话,因为那不是我想要的。我想叫原件。 这个 由于明显的原因而无法正常工作。 我已经精疲力竭了,一旦方法被重写,可以做到这一点吗?即所谓的原始实现? (我的编辑)基本上,我需要的是:覆盖toString以显示’this’对象的两个属性,并且我也想让’