wordpress + cloudflare CDN for images

Fader nginx-forum at nginx.us
Sun Oct 7 22:58:04 UTC 2012


Доброго времени суток.

Проблема вроде простая, но требует изящного решения. Итак, у меня несколько
фотоблогов wordpress. Изображений много в т.ч. тяжелых. Для облегчения
работы сервера использую связку Wordpress WP-SuperCache plugin + cloudflare
CDN. Через CDN пропускаю только изображения которые средствами
вышеуказанного плагина блоги раздают с поддоменов cdn.someblog.ru,
cdn1.someblog.ru, cdn2.someblog.ru и т.д. (Пример:
http://cdn1.someblog.ru/gallery/dir1/thumbs/thumbs23.jpg)

Таким образом виртуальные хосты nginx способны отвечать с любого поддомена:

server {
listen 80;
server_name .someblog.ru;
...
}

Всю малину портят боты-охотники всяких фотохостингов и фотостоков которые
парсят мои фотоблоги, заходя по адресам вида cdn.someblog.ru,
cdn1.someblog.ru, cdn2.someblog.ru и т.д. Wordpress не справляется с
нагрузкой, WP-SuperCache начинает плодить по сути зеркала страниц основного
адреса фотоблога. php бэкенд съедает ресурсы системы. сервер падает.

Подозреваю что меня спасет ngx_http_rewrite_module. Но не догоняю как
выразить в настройках так чтобы изображения оставались доступными на
поддоменах, а блоги отвечали только по определенным именам. Скажем
someblog.ru (также у некоторых есть зеркала: mirrorblog.ru)

Буду благодарен за развернутый ответ. Спасибо.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,231460,231460#msg-231460



Подробная информация о списке рассылки nginx-ru