Как настроить Kong заставить HTTP перенаправить на HTTPS? - PullRequest
0 голосов
/ 29 мая 2018

В качестве документа kong https://getkong.org/docs/0.13.x/admin-api/#add-certificate, если мы хотим, чтобы наш веб-сайт поддерживал https, мы должны сделать следующее:

curl -i -X POST \
  --url http://localhost:8001/certificates \
  --data 'cert =-----BEGIN CERTIFICATE-----...'
  --data 'key =-----BEGIN RSA PRIVATE KEY-----..'
  --data 'snis =example.com'

Теперь веб-сайт поддерживает https, но также поддерживаетhttp.Как мы можем заставить http перенаправить на https.

ps: есть плагин (https://getkong.org/plugins/dynamic-ssl). у него есть опция config.only_https=true. Кажется, он вызывает https. Но в чем разница между плагином dynamic-ssl и /certificatesапи.

Ответы [ 2 ]

0 голосов
/ 02 августа 2019

То же предложение, что и MN .Я также хотел бы дать свое решение:

Вы можете использовать этот плагин Kong: https://github.com/dsteinkopf/kong-http-to-https-redirect. Это форк, потому что оригинальный проект не совместим с Kong 1.x.

1) Я клонировал его в /usr/local/share/lua/5.1/kong/plugins/http-to-https-redirect.

2) Я добавил этот плагин в свою конфигурацию YAML в Kong:

plugins:
  # ... my plugins
  name: http-to-https-redirect

Надеюсь, это поможет.

0 голосов
/ 09 октября 2018

Я знаю, что уже слишком поздно, и, возможно, вы нашли свой ответ, этот ответ для других людей, как я, которые сталкивались с той же проблемой:

При создании API в Конге, как сказано здесь вы можете заставить протокол быть HTTPS, но, похоже, в ссылках на redirect HTTP-трафик на HTTPS не указано никакого способа, единственный найденный способ - изменить шаблон nginx Конга и принудительно перенаправить всезапросы к https, что не совсем то, что я хочу ... кстати, вы можете сделать это, создав шаблон, очень похожий на то, что обсуждается в по этой ссылке , и добавив следующую конфигурацию:

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        server_name _;
        return 301 https://$host$request_uri;
    }

тогда вы должны запустить свой экземпляр kong с kong start --nginx-conf custom_nginx.template

И тогда Kong будет использовать правила блокировки вашего сервера в nginx.

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