Назад | Перейти на главную страницу

Nginx переписывает URL изображения в другой домен

У меня есть структура папок на исходном сервере, например /images/2020/07/09/imagename.jpg, и я переместил все это в s3-совместимое хранилище на поддомене, немного изменив структуру папок. И теперь изо всех сил пытается сделать правильные перенаправления в случае, если кто-то обращается к изображению напрямую или оно ранее было где-то встроено с использованием старого URL-адреса.

Итак, вопрос в том, как сделать перенаправление Nginx с https://originsite.com/**images**/2020/07/09/imagename.jpg/png/etc. к https://media.originsite.com/**folder**/2020/07/09/imagename.jpg/png/etc.

Был бы признателен за вашу помощь.

Не видя конфигурации nginx, можно предположить следующее.

location ~ "^/images/(?<year>[0-9]{4})/(?<month>[0-9]{2})/(?<day>[0-9]{2})/(?<filename>.+\.(jpg|png))$" {
    return 301 https://media.originsite.com/foldder/$year/$month/$day/$filename;
}

Мы фиксируем определенные части пути URL-адреса к переменным, а затем используем переменные при формировании фактического URL-адреса перенаправления.

Остальная часть вашей конфигурации nginx может повлиять на то, как это работает.