Nginx - Перезапись определенной страницы в другой домен, предупреждение ssl

У меня 2 веб-сайта (old-domain.com и new-domain.com), я закрываю old-domain.com и что перенаправляю на новый домен. Поэтому я добавил строки перезаписи и возврата в свои файлы conf. Команда catch all (return 301 *) работает без предупреждения, однако, когда я перехожу на определенную страницу (например, old-domain.com/page-1), я получаю предупреждение о сертификате:

Этот сервер не может доказать, что он это old-domain.com; его сертификат безопасности получен от new-domain.com. Это может быть вызвано неправильной конфигурацией или злоумышленником, перехватывающим ваше соединение.

Оба домена находятся на одном IP, ниже приведены мои настройки nginx:

new-domain.conf:

server {
   listen 80;
    server_name new-domain.com;
}
server { 
    listen 433;

    server_name new-domain.com;

    ssl_certificate             new-domain.cert;
    ssl_certificate_key         new-domain.cert_key;
    ssl_client_certificate      new-domain.client_cert_key;
}

old-domain.conf:

server { 
    listen 80;
    listen 433;

    server_name old-domain.com;

    ssl_certificate             old-domain.cert;
    ssl_certificate_key         old-domain.cert_key;
    ssl_client_certificate      old-domain.client_cert_key;

    #catch all - works, but causes invalid certificate
    rewrite ^/page-1 https://new-domain.com/differnt-path/page-1-extra permanent;

    #catch all - works without warning
    return 301 https://new-domain.com;
0
задан 10 November 2019 в 07:42
1 ответ

rewrite локальный белый redirect, не. Действительно необходимо закончить Ваш rewrite redirect только для выполнения перенаправления. Вы могли также использовать соответствие местоположениям для Вашего, "переписывает"...

старый-domain.conf:

server { 
    listen 80;
    listen 433;

    server_name old-domain.com;

    ssl_certificate             old-domain.cert;
    ssl_certificate_key         old-domain.cert_key;
    ssl_client_certificate      old-domain.client_cert_key;

    location ~ ^/page-1 {
        return 301 https://new-domain.com/differnt-path/page-1-extra;
    }

    location ~ ^/page-2(/.*)?$ {
        return 301 https://new-domain.com/differnt-path/page-2-extra$1;
    }

    rewrite ^/page-3 https://page-3/ redirect; # http 302!!!

    #catch all - works without warning
    return 301 https://new-domain.com;
0
ответ дан 23 November 2019 в 13:52

Теги

Похожие вопросы