Что это означает:
RewriteRule "(^|/)\." - [F]
Я знаю, что флаг F означает выдачу запрещенной ошибки 403. И я знаю, что экранированная точка означает, что каталоги, начинающиеся с точки, запрещены. Но что означают символы вставки, вертикальной черты и косой черты в скобках? В чем будет разница между приведенным выше утверждением и этим:
RewriteRule "\." - [F]
Что, если бы я хотел пометить URL-адреса как запрещенные, если они начинаются с точки, но с исключением для этого каталога:
.well-known
Обновление : Похоже, Я могу удовлетворить последнее требование с помощью ...
RewriteRule "(^|/)\.(?!well-known)" - [F]
Мне все еще интересно, что означают символы вставки, вертикальной черты и косой черты в скобках.
^
и $
специальные символы, которые представляют начало, и конец строк (или строки)
эти |
OR
, символ
(^|/)\.
расширяется до ^.
или /.
(не выходя из наклонной черты для ясности)
^.
= никакая строка, которая имеет .
как первый символ
/.
= любая строка с /.