Назад | Перейти на главную страницу

Можно ли использовать регулярное выражение или список слов из переменной среды при сравнении строк в Apache 2.4?

В Apache 2.4 мы можем использовать переменную среды в простом выражении сравнения строк, например, предполагая SOME_HOST_NAME это переменная среды:

<If "%{HTTP_HOST} == env('SOME_HOST_NAME')">
    ...
</If>

или мы можем использовать -strmatch с подстановочными знаками, что также работает:

"%{HTTP_HOST} -strmatch env('HOST_NAME_WITH_WILDCARDS')"

Однако я хотел бы знать, можно ли также использовать шаблон регулярного выражения, например /my-regex-pattern/, или wordlist, например { one, two }, хранится в переменной среды.

Я пробовал разные подходы, основанные на грамматике, определенной в Выражения Apache docs, но ничего из этого не работает:

и

Это просто невозможно, или дело в правильном синтаксисе?

Подобные вопросы предполагают, что это не возможно в nginx:

Как использовать переменную вместо регулярного выражения

Как использовать переменную в регулярном выражении в nginx?