Регулярное выражение в файле конфигурации Apache - PullRequest
1 голос
/ 12 октября 2011

Мне нужно отключить php_flag для некоторых каталогов на моем сервере.

Имя каталога 'images /' и находится в следующих каталогах:

/ вар / WWW / HTML / moj-sait1 / изображения /

/ вар / WWW / HTML / anysitename / изображения /

/ вар / WWW / HTML / что-то / изображения /

....

Какое регулярное выражение мне нужно вставить в конфигурационный файл apache?

Спасибо.

Ответы [ 2 ]

1 голос
/ 12 октября 2011

Попробуйте это:

/var/www/html/(mysite1|something|[^/]+)/images/

Значение: либо «mysite», либо «что-то», либо «последовательность символов, содержащая что-либо, кроме косой черты».

0 голосов
/ 28 апреля 2019

Apache использует Perl-совместимое регулярное выражение, как упомянуто здесь .

Вы можете проверить свои регулярные выражения с помощью этого онлайн-инструмента: https://regex101.com/r/gO4eS8/5

Как уже упоминалось в Документация Apache , Apache понимает Perl-совместимые регулярные выражения v5 (PCRE) версии 2.2.

Для этого случая следующее регулярное выражение должно выполнять работу (сопоставление каталогов и содержимого): /var/www/html/(|[^/]+)/images/?(?:[^\/]+)?$

Тестовая строка:

/folder1/images/test1
/var/www/html/images
/folder2/images/test1
/folder2/mysite1/test2
/var/www/html/mysite2/images/foo.png
/var/www/html/anysitename/images/
/var/www/html/something/images/

Соответствие строк:

/var/www/html/mysite2/images/foo.png
/var/www/html/anysitename/images/
/var/www/html/something/images/
...