Как правильно настроить nginx после перехода на https? - PullRequest
0 голосов
/ 22 апреля 2019

Я перевел свой сайт с http на https. Но у меня есть проблемы с файлами роботов и карты сайта. Я хочу исключить их из перенаправления. Но я не могу этого сделать. Когда я пытаюсь перейти на http://samalco.ru/robots.txt, я получаю 404. Но для https это работает хорошо.

Http:

server {
    listen 80;
    server_name samalco.ru www.samalco.ru;
    root /var/www/samalco.ru;
    index index.php;

    location ~ \.php$ {............................}

    location @rewrite { rewrite ^/(.*)$ /index.php?q=$1; }

    location /sitemap.xml { try_files $uri /sitemap-raw/; }

    location /sitemap-raw/ { rewrite ^/sitemap-raw/ break; }

    location /robots.txt { try_files $uri /robots/; }

    location /robots/ { rewrite ^ /robots/ break; }

    location / { rewrite ^(.*)$ https://samalco.ru$1 permanent; }
}

https:

server {
    server_name samalco.ru www.samalco.ru;
    listen 443 ssl http2;
    access_log off;
    root /var/www/samalco.ru;
    index index.php;

    ssl_certificate path to certificate;
    ...................................

    if ($host ~* www\.(.*)) {
        set $host_without_www $1;
        rewrite ^(.*)$ https://$host_without_www$1 permanent;
    }

    location @rewrite { rewrite ^/(.*)$ /index.php?q=$1 last; }

    location /sitemap.xml { try_files $uri /sitemap-raw/; }

    location /robots.txt { try_files $uri /robots/; }

    location @rewrite { rewrite ^/(.*)$ /index.php?q=$1; }

    location ~ \.php$ { ............................ }
}

Как я могу решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...