Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache mod#u重写我不使用的标志';我不明白_Apache_.htaccess - Fatal编程技术网

Apache mod#u重写我不使用的标志';我不明白

Apache mod#u重写我不使用的标志';我不明白,apache,.htaccess,Apache,.htaccess,我在互联网上搜索了一些我似乎不理解的标志 您何时使用[E]标志 比如说 RewriteRule \.jpg$ - [env=dontlog:1] 那有什么用 NS(无后续请求)是如何工作的?如果我的php文件中有很多include,我需要把它放到NS中,这样它就不会停止工作了吗?它有什么用?当该规则匹配(\.jpg%)时,环境变量dontlog的值设置为1 稍后,如何使用它的最可能场景是Apache配置定义了一个指令,该指令读取该环境变量,并且在设置该变量时不会向日志文件写入一行。因此,对.j

我在互联网上搜索了一些我似乎不理解的标志

您何时使用[E]标志

比如说

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