Размещение изображений на отдельных поддоменах - PullRequest
12 голосов
/ 07 октября 2009

В моей компании около 30 веб-сайтов, которые используют одну и ту же кодовую базу и многократно используют одни и те же изображения. В настоящее время изображения для всех сайтов размещаются на одном домене, а затем каждый другой сайт должен ссылаться на эти изображения.

т.е., www.example.com/images/hello.jpg

и на www.example2.com мы имеем что-то вроде: <img src="http://www.example.com/images/hello.jpg" />

Недавно кто-то сказал мне, что я должен поместить все эти общие / статические изображения в поддомен, но я не вижу в этом преимуществ. Я слышал, что может быть небольшое увеличение скорости, но я также слышал, что это может усложнить ситуацию. Кто-нибудь может уточнить?

Ответы [ 3 ]

16 голосов
/ 07 октября 2009

Пара преимуществ:

  • Отдельный домен предотвращает отправку файлов cookie вашего домена для каждого запроса изображения, где они не нужны. Уменьшает накладные расходы полосы пропускания для каждого запроса.
  • Большинство браузеров отправляют только определенное количество HTTP-запросов одновременно к определенному домену, поэтому передача изображений и другого статического содержимого из второго домена потенциально может удвоить количество HTTP-запросов за один раз.
  • Можно использовать другой, более легкий веб-сервер, например, nginx / lighttpd, для обслуживания статического содержимого.

Downsides:

  • Управление им.
  • Два поиска DNS вместо одного.
3 голосов
/ 07 октября 2009

Это описано в нескольких подкастах Stackoverflow.

Одна проблема - если вы обслуживаете страницу https, пользователь может получить предупреждение о сочетании безопасных и небезопасных элементов.

3 голосов
/ 07 октября 2009

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

При правильной настройке другой поддомен может быть просто каталогом на вашем веб-сервере. Зависит от вашего config-file-fu.

...