Движущиеся файлы к Amazon S3 при хранении URL

Я нахожусь в чем-то вроде рассола здесь. Мне в настоящее время размещал веб-сайт в общей среде хостинга сторонний поставщик услуг хостинга. По сути, у меня нет корневого доступа к серверу IIS, что этот веб-сайт идет.

У меня в настоящее время есть каталог на сайте, таком как:

mysite.com/myfiles

"myfiles" каталог в настоящее время имеет много файлов в нем. Столько файлов, что это помещает меня по выделению дискового пространства в моем хосте. Существует пара вещей теперь рассмотреть:

  1. Хост не имеет более щедрого плана относительно нас обновить до. Они только готовы заряжать нас (очень высоко) сборы за излишек.

  2. Мы должны остаться с этим хостом до конца нашего контракта с ними, который на расстоянии почти в один год.

Я хотел бы взять содержание этого каталога и поместить его в Amazon S3, который уменьшит деформацию дискового пространства на хостинг-аккаунте. Единственная проблема - то, что URL в файлы должен остаться тем же!

Так, например, если внешние ссылки сайта с mysite.com/myfiles/image.jpg, я хочу, чтобы изображение на том сайте продолжило работать без помехи.

Там какой-либо возможный путь состоит в том, чтобы достигнуть этого?

7
задан Steffen Opel 8 January 2013 в 09:42
поделиться

4 ответа

Я бы порекомендовал создать корзину S3 (и, возможно, дистрибутив Cloudfront, который располагается поверх нее), заполненный макетом папок, который соответствовал бы вашему существующему сайту (для будущей миграции). Затем создайте запись CNAME в вашем DNS, чтобы дать вашей корзине / дистрибутиву понятное имя (например, s3.my.domain ).

Затем добавьте средство перезаписи URL на ваш существующий сайт, который перенаправляет запросы для ] http: //my.domain/myfiles/xxx на соответствующий URL-адрес S3, например, « http: //s3.my.domain/myfiles/xxx ».

Когда ваш хостинг Контракт завершен, измените DNS, чтобы указать ваши корневые записи и записи www в сегменте / распределении или другом узле по мере необходимости.

В настоящее время я использую Cloudfront для географического кэширования статического контента для одного из моих предприятий и он отлично работает; нулевое время простоя на данный момент ( ~ 6 более 12 месяцев).


июнь 2010 г .: Cloudfront был отличным, намного дешевле, чем предыдущий вариант хостинга. В настоящее время мы обслуживаем около 2,5 млн запросов в месяц (~ 750 ГБ) всего за 120 долларов США.

10
ответ дан 7 December 2019 в 01:22
поделиться

Вы можете найти информацию о том, что вам нужно, просмотрев документацию Virtual Hosting of Buckets для Amazon S3. Вы можете настроить имя хоста, которое будет использоваться для доступа к вашим файлам S3, что может помочь сделать то, что вам нужно.

0
ответ дан 7 December 2019 в 01:22
поделиться

Первый вопрос: почему для сторонних сайтов важно иметь неразрывные URL-адреса вашего сайта? Платят ли они вам за контент? Если они не платят вам за контент, есть ли какие-то преимущества, которые вы получаете, предоставляя им контент бесплатно? Это бизнес-решение, и, возможно, вы пришли к выводу, что стоит заплатить чрезмерную плату за предоставление этого контента.

Второй вопрос: на сколько URL-адресов фактически ссылаются сторонние сайты? Вы можете найти время, чтобы эти URL оставались доступными, а все остальное переключили на хостинг S3. Ответить на этот вопрос может запрос Google "ссылка:"

Итак, к решениям: первое решение работает, если у вас есть возможность создавать 301 редирект. Просто настройте перенаправление для каждого URL-адреса, который вы хотите переместить.

Второе решение - обратный прокси-сервер, в котором URL-адреса находятся на mysite. com отображаются на mysite.s3.amazon.com. Я не уверен, что это действительно хорошее решение; вы будете платить за пропускную способность для прокси файлов. Кроме того, если у вас есть возможность настроить обратный прокси-сервер, у вас есть возможность создавать перенаправления 301.

Третье решение: массово переместите ваш сайт и получите карту доменного имени на S3 (через сопоставление CNAME). Да, вы в конечном итоге платите за хостинг, которым больше не пользуетесь. А если вы используете динамический контент, это не сработает (но, возможно, тогда вы будете платить 30 долларов в месяц за S3).

И, наконец, не решение, а путь вперед: используйте отдельное доменное имя для дополнительного статического контента. Это доменное имя можно сопоставить через CNAME с корзиной Amazon.

если у вас есть возможность настроить обратный прокси-сервер, у вас есть возможность создавать перенаправления 301.

Третье решение: массово переместите ваш сайт и получите отображение доменного имени на S3 (через сопоставление CNAME). Да, вы в конечном итоге платите за хостинг, которым больше не пользуетесь. А если вы используете динамический контент, это не сработает (но, возможно, тогда вы будете платить 30 долларов в месяц за S3).

И, наконец, не решение, а путь вперед: используйте отдельное доменное имя для дополнительного статического контента. Это доменное имя можно сопоставить через CNAME с корзиной Amazon.

если у вас есть возможность настроить обратный прокси-сервер, у вас есть возможность создавать перенаправления 301.

Третье решение: массово переместите ваш сайт и получите отображение доменного имени на S3 (через сопоставление CNAME). Да, вы в конечном итоге платите за хостинг, которым больше не пользуетесь. А если вы используете динамический контент, это не сработает (но, возможно, тогда вы будете платить 30 долларов в месяц за S3).

И, наконец, не решение, а путь вперед: используйте отдельное доменное имя для дополнительного статического контента. Это доменное имя можно сопоставить через CNAME с корзиной Amazon.

это не сработает (но, возможно, тогда вы будете платить 30 долларов в месяц за S3).

И, наконец, не решение, а путь вперед: используйте отдельное доменное имя для дополнительного статического контента. Это доменное имя можно сопоставить через CNAME с корзиной Amazon.

это не сработает (но, возможно, тогда вы будете платить 30 долларов в месяц за S3).

И, наконец, не решение, а путь вперед: используйте отдельное доменное имя для дополнительного статического контента. Это доменное имя можно сопоставить через CNAME с корзиной Amazon.

0
ответ дан 7 December 2019 в 01:22
поделиться

Переместить файлы и установить обработчик 404 в каталог. Обработчик 404 может прозрачно перенаправить клиента со статусом 301 или 302 в URL S3. Другие рекомендации по использованию url переписывания скорее всего не подойдут для файлов не aspx, так как вы находитесь на виртуальном хостинг-провайдере и они обычно не поддерживают wildcard ASP.NET отображения.

.
0
ответ дан 7 December 2019 в 01:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: