перенаправить main.com/image.jpg (я понимаю, что мы должны будем сделать 301) на cdn.main.com/image.jpg
Это - плохая идея, не делайте этого.
За Вашим долгим вопросом довольно трудно следовать. Насколько я понимаю Вы волнуетесь по поводу загрузки сервера, не, как быстро сайт загружается для Ваших конечных пользователей.
Если Вы волнуетесь по поводу мощности сервера, также:
- Получите более крупный сервер или
- Используйте прокси-сервер в RAM перед своим сервером HTTP (Сквид, Лак, Транспортный Сервер Apache) или
- Используйте недорогую Сеть доставки контента для кэширования статического содержания ближе конечным пользователям, уменьшая и время загрузки страницы и нагрузку на серверы.
таким образом способность браузера иметь больше соединений.
Предел загрузки параллели браузера является чем-то вроде отвлекающего маневра - современные браузеры загружают 6-8 файлов параллельно с того же имени хоста. Это - только старые браузеры (IE6, IE7), которые действительно страдают от этого ограничения.
Если Вы волнуетесь по поводу скорости под нагрузкой страницы конечного пользователя, то используйте CDN, это - хороший совет во всех ситуациях, были Ваши пользователи, распространены по большому географическому району (т.е. у Вас есть мировая аудитория).
301 с всех изображений на странице быть оштрафованным Google?
Возможно. Но более вероятно, это будут ненавидеть Ваши пользователи. Поскольку каждое изображение запрашивает сначала служить 301 и затем правильному образу от другого URL. Это значит 2 распространения в прямом и обратном направлениях для серверов для каждого изображения, и следовательно значительно более длительное время загрузки страницы для Ваших пользователей.
Дважды проверьте свой текущий DNS и будущий DNS, просто чтобы быть уверенным ... Я сделал то, что вы собираетесь делать, и точно знаю, через что вы проходите! Если бы вы переключали IP-адреса, я бы порекомендовал вам снизить TTL для существующих записей, но в этой ситуации, когда имена и IP-адреса остаются неизменными, ваше единственное воздействие будет, если вы не настроите новые записи. правильно ... Возможность предварительно подготовить их - это здорово ... Я думаю, у вас не будет проблем.
Вы можете использовать утилиты командной строки host / dig / nslookup и google dns (8.8.8.8/ 8.8.4.4) как независимый сервер имен. И, конечно же, вы должны использовать авторитетные DNS-серверы вашего домена.
# host -t ns example.net 8.8.8.8
# host -t mx example.net 8.8.4.4
# host -t txt example.net ns1.example.net
В любом случае будет кеш из-за TTL вашей зоны.