Лучшая практика для обслуживания статических файлов - PullRequest
0 голосов
/ 14 марта 2011

Я занимаюсь разработкой на веб-сервере Python (Tornado).Я планирую поместить это в производственный экземпляр с nginx впереди.Это будет мой первый опыт размещения чего-либо в производственной среде.Мой вопрос, как настроить файлы / каталоги для статического обслуживания.Например, мое приложение, позволяет пользователям загружать фотографии в Интернет.Я получаю запросы в Торнадо и сохраняю на диск.Однако когда пользователь заходит на страницу своих товаров, я бы предпочел, чтобы изображения извлекались со статического сервера.Мой вопрос: как лучше всего переносить изображения с моего динамического сервера на статический сервер?Должен ли я rsync каталог изображений на статический сервер, а затем запустить cron, который удаляет изображения с динамического сервера?

1 Ответ

0 голосов
/ 14 марта 2011

Рекомендуется использовать общее хранилище, но если вы не можете его использовать, тогда вы можете использовать опцию "proxy_store" из nginx. Пример из документа nginx:

location /images/ {
    root                 /data/www;
    error_page           404 = @fetch;
}

location @fetch {
    internal;

    proxy_pass           http://backend;
    proxy_store          on;
    proxy_store_access   user:rw  group:rw  all:r;
    proxy_temp_path      /data/temp;

    root                 /data/www;
}
...