Как использовать предопределенную переменную apache ENV в файле .htaccess в регулярном выражении - PullRequest
0 голосов
/ 10 мая 2018

Проблема:

У меня есть несколько поддоменов, таких как foo.website.com, bar.website.com и так далее. Один из них - resources.website.com, и ресурсы из него должны быть доступны для всех других поддоменов ***. Website.com. Очевидно, что браузер с foo.website.com (с ресурсом .js из resources.website.com) сталкивается с проблемой CORS.

Рабочий код:

Я пытаюсь настроить свой .htaccess на resources.website.com, чтобы определить, выполняется ли запрос с сайта ***. Website.com, и следующее решение прекрасно работает

<FilesMatch "\.(js|css|ttf|otf|eot|woff|ico)$">
    SetEnvIf Origin "http(s)?://(.*\.website\.com)$" AllowOrigin=*
    Header add Access-Control-Allow-Origin %{AllowOrigin}e env=AllowOrigin
</FilesMatch>

Что бы я хотел сделать:

Мне бы хотелось иметь возможность хранить .com (зону) вне .htaccess в файлах конфигурации apache. (У меня есть несколько сред в разных зонах, поэтому, когда код, включая файлы htaccess, развертывается в других зонах, он полностью нейтрален). В конфигурационных файлах apache у меня

SetEnv domain_zone com

.. и я хотел бы использовать эту переменную в приведенном выше коде регулярного выражения (если это возможно), например:

SetEnvIf Origin "http(s)?://(.*\.website\.%{domain_zone}e)$" AllowOrigin=*

.. но мне явно не хватает навыков .htaccess. Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...