301 редирект с поддомена на домен определенный URL в nginx



Теперь у меня есть два блога.



A - blog.domain.com -создано на Tumblr



B - domain.com/blog/ - создан на Wordpress (который находится на другом сервере) и обслуживается прокси-сервером nginx на domain.com



Я хочу перенаправить все мои сообщения с A на B, поэтому я перемещу свой поддомен на сервер B и настрою перенаправления для старых URL-адресов сообщений.



Как я могу сделать это хорошо в nginx ?



У меня есть немного другие URL-адреса в новом блоге, поэтому я не могу сделать это динамически для всех(у меня есть всего 30-35 URL на старом блоге, так что это можно было сделать вручную, строка за строкой перенаправляя).



Я думаю, что настройки ниже будут в порядке



server {
server_name blog.domain.com;
location / {
return 301 http://domain.com/blog/;
}
location /posts/123456/my-first-post {
return 301 http://domain.com/blog/my-first-post-on-new-blog/;
}
}


Это хороший способ сделать это ?



Большое спасибо за помощь в этом случае.

758   1  

1 ответ:

Вы можете поместить список URI на карту:

map $uri $newuri {
    default                     /blog/;
    /posts/123456/my-first-post /blog/my-first-post-on-new-blog/;
    /posts/another/post         /blog/somewhere-on-new-blog/;
}
server {
    server_name  blog.domain.com;
    return 301 http://domain.com$newuri;
}

Смотритеэтот документ для получения подробной информации.

Comments

    Ничего не найдено.