Я пытаюсь обойти некоторые проблемы с Cross Origin в IE11 и iOS, замаскировав поддомен как каталог
т.е.
я хочу example.com/cdn/
на самом деле загрузить cdn.example.com/
Я вроде как работал с
RedirectMatch 301 ^/cdn/(.*)$ http://cdn.example.com/$1
Но в браузере происходит редирект, и он все равно показывает http://cdn.example.com
вместо того, чтобы оставить это как example.com/cdn/
Любой способ добиться этого !?
Вы можете добавить Access-Control-Allow-Origin
заголовок ответов, предоставляемых вашим сервером.
Вы можете сделать это либо в своих скриптах (PHP или что-то еще, что вы запускаете на сервере), либо вы можете сделать это в файле .htaccess, используя mod_headers:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "http://cdn.example.com"
</IfModule>
Ты можешь использовать mod_proxy для проксирования запросов из каталога в фактический домен:
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /cdn http://cdn.example.com
ProxyPassReverse /cdn http://cdn.example.com
Это нужно поместить в фактическую конфигурацию apache, она не работает в файле .htaccess.
Обратите внимание, что, проксируя такие запросы, вы демонстрируете преимущества CDN бесполезный. Заголовочное решение в мой другой ответ предпочтительнее этого.