Я хотел бы получить nginx для перенаправления определенных поддоменов на определенные блоки серверов для доступа к службам на разных портах

server {

    listen 80;
    server_name example.com www.example.com;

    location /crm {
            return 301 http://example.com:8935;
    }

    location /api {
            return 301 http://example.com:4667;
    }

    location /scanner {
            return 301 http://example.com:4466;
    }

    return 301 https://www.example.com/$request_uri?$query_string;

}

Поэтому, если кто-то получит доступ к example.com/crm, он должен будет перенаправить на серверный {} блок, прослушивающий порт 8935

Если это не один из них, то он должен перенаправить на обычный веб-контент https.

Это не работает, кажется, всегда использовать последний редирект на обычный сайт. Поэтому, когда я пытаюсь / CMS я получаю 404 не найден на сайте.

Есть ли какой-нибудь способ предотвратить это?

1 ответ1

0

Попробуйте поместить последний вариант в location / блок

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .