Apache mod#u重写我不使用的标志';我不明白
我在互联网上搜索了一些我似乎不理解的标志 您何时使用[E]标志 比如说Apache mod#u重写我不使用的标志';我不明白,apache,.htaccess,Apache,.htaccess,我在互联网上搜索了一些我似乎不理解的标志 您何时使用[E]标志 比如说 RewriteRule \.jpg$ - [env=dontlog:1] 那有什么用 NS(无后续请求)是如何工作的?如果我的php文件中有很多include,我需要把它放到NS中,这样它就不会停止工作了吗?它有什么用?当该规则匹配(\.jpg%)时,环境变量dontlog的值设置为1 稍后,如何使用它的最可能场景是Apache配置定义了一个指令,该指令读取该环境变量,并且在设置该变量时不会向日志文件写入一行。因此,对.j
RewriteRule \.jpg$ - [env=dontlog:1]
那有什么用
NS(无后续请求)是如何工作的?如果我的php文件中有很多include,我需要把它放到NS中,这样它就不会停止工作了吗?它有什么用?当该规则匹配(\.jpg%
)时,环境变量dontlog
的值设置为1
稍后,如何使用它的最可能场景是Apache配置定义了一个指令,该指令读取该环境变量,并且在设置该变量时不会向日志文件写入一行。因此,对.jpg
图像文件的请求不会写入Apache日志
例如:
# Log any request that doesn't have a dontlog variable set...
CustomLog logs/access_log common env=!dontlog
这里有一些关于环境变量的信息
直接从上述文件:
如果请求的URI是图像文件,则以下示例将名为“image”的环境变量设置为值“1”。然后,该环境变量用于从访问日志中排除这些请求
要回答您关于为什么重写不起作用的问题,这是因为第一条规则将请求从index.php重写到target.php,因此第二条规则永远不会触发,因为请求的文件不再是index.php
注释已经为您提供了环境变量标志的答案。该标志设置了一个“环境变量”,您可以在配置的其他地方读取该“环境变量”,从而有条件地触发其他行为。至于它到底做什么,这是在你的配置文件的其他地方定义的,所以我们不能真正告诉你。我不能阅读它吗,稍后在我的htaccess脚本中,设置它,然后再阅读它。。或者把它放在两个请求之间阅读..就像一个“会话”也许你有更多例子的链接。。我不熟悉那个日志记录系统..也不熟悉“通用”keyword@DmitryMakovetskiyd我一直在寻找例子,但被抽离了。。。只有有限的信息,我会看看我还能发现什么。
RewriteRule \.(png|gif|jpg) - [E=image:1]
CustomLog logs/access_log combined env=!image