CloudFront Доставка на целия сайт и URL адреси, съдържащи се в html

Това е прост въпрос, който вероятно се отнася за всички CDN, но не успях да намеря отговор в мрежата или на сайта на AWS (http://aws.amazon.com/cloudfront/). Надяваме се, че това е прост отговор за всеки, който е запознат с CDN или CloudFront и това може да помогне на другите да разберат как работи това.

Ако трябваше да използвам CloudFront за доставка на целия сайт и да настроя първоначален сървър (напр. произходът е www.myexample.com), тогава ако имам html файл (example1.html), който се сервира на www.myexample.com/example1.html и example1.html трябваше да съдържат елемент, който включва img таг със src http://www.anothersite.com/anotherExample.jpg или дори източник на кофа S3, тогава този jpg от друг източник също ли се кешира в cdn?


person Skill M2    schedule 24.08.2014    source източник


Отговори (1)


Трябва да свържете кофата S3 към разпространение на CloudFront и да използвате тези връзки в самия html код. Може да греша, но не виждам как CDN може да успее да кешира тези връзки, тъй като клиентският браузър сам изисква тези ресурси въз основа на изтегления html код от CDN.

Следователно във вашия пример само заявки за myexample.com ще преминат през вашата CloudFront дистрибуция без допълнителни настройки за произход.

Редактиране: вижте коментара на @Skill M2 относно добавянето на множество източници за едно и също разпространение на CloudFront

person andreimarinescu    schedule 24.08.2014
comment
Това е, което бих предположил, но прочетох на няколко места, че това няма да е необходимо, като например тук: fideloper.com/cloudfront-full-site-delivery (цитат по-долу) и тук blogs.gartner.com/lydia_leong/2012/05/14/. Тези места всъщност не обясняват как работи това, така че се надявах да установя дали това е вярно или грешно. Въпреки че настройката на целия ви сайт да бъде кеширан изглежда по-лесна (не е необходимо да променяте URL адреса на активите във вашия HTML на CDN URL!), има няколко много важни съображения, които трябва да вземете предвид. - person Skill M2; 25.08.2014
comment
Това, което разбирам от този цитат е, че всички вътрешни активи са кеширани в CDN, а не активи от външни източници. - person andreimarinescu; 25.08.2014
comment
Добре, така че този отговор е като цяло правилен, единственото нещо, което трябва да добавите е, че не се нуждаете от друга дистрибуция в облачен фронт, възможно е да използвате същата дистрибуция, но да настроите повече от един първоначален сървър (един за уеб сървъра, един за s3 bucket) и след това настройте „поведения“ по модел на пътя, за да определите кой източник-сървър да използвате за всяка заявка към cdn). Вижте docs.aws.amazon.com /AmazonCloudFront/latest/DeveloperGuide/ - person Skill M2; 01.09.2014