Предоставить доступ к шлюзу Kong API в настраиваемом домене /URL

Я настроил шлюз Kong API, следуя документации здесь . С помощью приведенной ниже команды curl я могу подтвердить, что Kong активирован и отвечает через localhost.

      curl -i http://localhost:8001/services
    
    HTTP/1.1 200 OK
    Date: Thu, 13 May 2021 15:39:32 GMT
    Content-Type: application/json; charset=utf-8
    Connection: keep-alive
    Access-Control-Allow-Origin: http://localhost:8002
    X-Kong-Admin-Request-ID: xeUkwshQPRXA5T9bPQmxsmPcspJCGU2L
    vary: Origin
    Access-Control-Allow-Credentials: true
    Content-Length: 23
    X-Kong-Admin-Latency: 5
    Server: kong/2.3.3.2-enterprise-edition

Мой вопрос для производства: как настроить Kong для ответа на DNS / URL?

Я настроил DNS-запись на AWS Route 53, чтобы направлять трафик на IP-адрес этого сервера, на котором развернут Kong. С автономным приложением - приложением Node / Express для exmaple, я бы настроил обратный прокси, то есть NGINX, для маршрутизации запросов, полученных на сервер от URL-адреса, к приложению. Однако, поскольку Kong является шлюзом API, это было бы неуместно.

Чтобы подвести итог;

  • Я хочу сделать запрос API от клиента к шлюзу по адресу: http://my-gateway-url.com/service-name/route
  • Этот запрос должен обрабатываться Kong и обрабатываться настроенной службой. Как мне настроить Kong для прослушивания на http://my-gateway-url.com ?

1 ответ

Если вы хотите выполнить маршрутизацию на основе хоста, это классическая функция .

Сначала создайте службу (ваше приложение узла):

Затем создайте маршрут:

Затем вы можете проверить соответствие маршрута

      curl -i GET -H "Host: my-gateway-url.com" --header 'kong-debug: 1' 0.0.0.0:8000
curl: (6) Could not resolve host: GET
HTTP/1.1 502 Bad Gateway
Date: Thu, 13 May 2021 20:11:08 GMT
Content-Type: text/plain; charset=utf-8
Connection: keep-alive
Kong-Route-Id: 9f5584d7-4ac5-4720-a90c-f809c47faf8d
Kong-Route-Name: my_gw
Kong-Service-Id: 77443f69-80f4-49ea-b910-77eebdeb9385
Kong-Service-Name: node_app
Server: kong/2.0.3
Content-Length: 58

по сравнению с

      curl -i GET  --header 'kong-debug: 1' 0.0.0.0:8000
curl: (6) Could not resolve host: GET
HTTP/1.1 404 Not Found
Date: Thu, 13 May 2021 20:11:23 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Content-Length: 48

{"message":"no Route matched with those values"}
Другие вопросы по тегам