这是什么意思:
RewriteRule "(^|/)\." - [F]
我知道 F 标志意味着抛出 403 禁止错误。我也知道转义句点意味着以句点开头的目录是被禁止的。但是括号内的插入符号、竖线和斜线是什么意思呢?上面的语句和下面的语句有什么区别:
RewriteRule "\." - [F]
如果我想将以句点开头的 URL 标记为禁止访问,但此目录除外,该怎么办?
.well-known
更新:看来我可以用以下方法满足后者的要求……
RewriteRule "(^|/)\.(?!well-known)" - [F]
我仍然想知道括号内的插入符号、竖线和斜线是什么意思。
答案1
^
和$
是表示字符串(或行)开始和结束的特殊字符
这|
是一个OR
符号
(^|/)\.
扩展为 ^.
或者 /.
(为了清晰起见,没有使用转义斜线)
^.
= 任何以 a.
作为第一个字符的字符串
/.
= 任何带有/.