use*_*531 86 apache .htaccess comments
为什么这样做:
RewriteRule (.+)/$ $1
Run Code Online (Sandbox Code Playgroud)
这项工作:
RewriteRule (.+)/$ $1 [L] #bla bla bla
Run Code Online (Sandbox Code Playgroud)
但这不起作用:
RewriteRule (.+)/$ $1 #bla bla bla
Run Code Online (Sandbox Code Playgroud)
Jon*_*Lin 137
最后一条规则不起作用,因为评论不是真正的评论.htaccess中的注释必须以a 开头#
(必须在一行的开头),而不是随意的任何地方.
在第二种情况下,它#bla bla bla
被解释为RewriteRule
指令的第4个参数,它被简单地忽略.
在最后一种情况下,它#bla bla bla
被解释为第三个参数,在这种RewriteRule
情况下是标志所在的位置,并且#bla bla bla
不是mod_rewrite理解的任何标志,因此您会收到错误.
IMS*_*SoP 28
Apache的配置文件格式(其中.htaccess
文件就是一个例子),在技术上不支持嵌入式的意见,只完整行的注释(即一行开始了#
).
以井号"#"开头的行被视为注释,并被忽略.配置指令后,注释可能不包含在一行中.- 官方Apache 2.4手册
但是,令人困惑的是,每个模块都会解析其指令的输入,但它喜欢 - 因此mod_rewrite
决定如何处理以任何行开头RewriteRule
我不确定,但我的猜测是mod_rewrite
忽略了之后的所有事情[flags]
,#
实际上并不是必需的.
但最好的办法是始终保持对自己的评论,因为无论您评论的指令是什么,都可以.
归档时间: |
|
查看次数: |
59805 次 |
最近记录: |