Делаем 301 редирект для сайтов на asp

Бывает необходимость сделать 301 редирект, например, когда сайт переезжает на новый домен (адрес).
Для сайтов, расположеных на сервере в web-сервером Apache достаточно создать в корне файл .htaccess и прописать в нем необходимые директивы серверу.

Но так как web-сервер IIS не поддерживает управление через .htaccess, его использовать нельзя.

Но и тут ничего сложного нет. Необходимо в начале asp скрипта добавить

Response.Status = "301 Moved Permanently"
Response.AddHeader "Location", "http://www.site.ru"

"http://www.site.ru" - адрес, на который нужно редиректить

Доработанный antileech модуль к nginx (ngx_http_secure_link_module)

В конфигурационный файл добавлена директива secure_link_timeout, которая определяет время жизни ссылки в секундах (по умолчанию 3600 секунд - 1 час).

URL защищённой ссылки теперь выглядит так:

/prefix/hash/timestamp/file

Поле timestamp представляет собой hex-предстваление unixtime.
MD5-хэш счиается от имени файла, поля timestamp и секретного слова (указывается директивой secure_link_secret).

Таким образом, сначала сравнивается поле timestamp с разницей текущего времени и таймаута. Затем проверяется md5-хэш.

Ссылку можно сформировать таким образом: (пример на php):

< ?php $secret = 'topsecretword'; $fname = 'file.ext'; $ts = sprintf("%08x",strtotime("now")); echo '/' . md5($fname . $ts . $secret) . "/{$ts}/{$fname}n"; ?>

Патч применяется к файлу ngx_http_secure_link_module.с web-сервера nginx версии 0.7.41. Читать полностью »