IIS7: URL Rewrite - можно ли его использовать, чтобы скрыть путь CDN? - PullRequest
1 голос
/ 24 апреля 2010

Я использую Rackspace Cloud CDN (Limelight CDN) для своего веб-сайта. URL-адреса CDN имеют формат http://cxxxxxx.cdn.cloudfiles.rackspacecloud.com/something.jpg

Мой домен - mydomain.com.

Можно ли использовать переопределение URL-адреса IIS для отображения http://cxxxxxx.cdn.cloudfiles.rackspacecloud.com/something.jpg как http://images.mydomain.com/something.jpg? Или это невозможно без установки CDN, принимающей мое CNAME?

Если да, то можете ли вы помочь создать правило перезаписи URL? (Извините, не знаю, как использовать регулярные выражения)

Спасибо, WT

1 Ответ

1 голос
/ 24 апреля 2010

Вы не можете сделать это с помощью правила перезаписи URL, как это происходит на вашем сервере.

Одним из основных преимуществ CDN является предоставление множества точек доступа гораздо ближе к пользователю, чем ваш сервер. Использование обратной поездки на ваш сервер полностью уничтожает это преимущество.

Вы можете написать правило перенаправления откуда-нибудь на вашем сайте, которое затем отправляет браузер в CDN, но пользователь увидит URL-адрес CDN (т.е. он не будет скрыт).

Для этого рассмотрим что-то вроде

RewriteEngine On
RewriteRule ^/images/(.*)$ http://...cdn.....com/$1 [L,R=301]

Если вы пишете в файле .htaccess, а не в файле конфигурации сервера, то пропустите первый / после ^.

Как вы упомянули, если бы вы могли заставить облачные файлы принимать CNAME, указывающие на их имя хоста, тогда можно было бы просто заменить имя вашего хоста на ваше. Однако я предполагаю, что, задавая этот вопрос, вы уже изучили этот путь.

...