2016-12-27 2 views
0

J'essaie d'implémenter quelques API déjà existantes. Supposons que j'ai une application en cours d'exécution sur le serveur direPoint de terminaison proxy AWS API Gateway

192.168.0.1:8036

. Il a différentes voies comme

http://192.168.0.1:8036/api/sample/a1?name=swas&class=tty 
http://192.168.0.1:8036/api/samp/a2?addr=swas&roll=tty 

ont un nom de domaine personnalisé dire

api.example.com

donc ici que je veux adresser toute demande par AWS Gateway. Enfin demande serait comme

Demande

http://api.example.com/api/samp/a2?addr=swas&roll=tty

serait passé comme

http://192.168.0.1:8036/api/samp/a2?addr=swas&roll=tty

Note: Il pourrait y avoir plusieurs routes avec paramètre dynamique différent

En bref toute demande qui vient api.example.com/* devrait être adopté par la passerelle AWS pour 192.168.0.1:8036/*

+1

Et votre question est ... comment faire cela? Que faites-vous sur api.example.com? Nginx? Apache? HAProxy? ELB? ALB? CloudFront? –

+0

@ Michael-sqlbot oui, comment faire cela? Je cours Nginx –

+0

Nous devons clarifier cette question, plus loin, parce que je l'ai lu à l'origine ... en arrière. Je pensais que vous vouliez Nginx → API Gateway mais maintenant je pense que vous voulez API Gateway → Nginx. API Gateway ne peut pas accéder à l'espace d'adressage privé en utilisant le mode proxy du service HTTP. Votre serveur Nginx doit être accessible depuis Internet pour que API Gateway puisse y accéder, si c'est ce que vous voulez. Mais vous pouvez sécuriser votre point de terminaison accessible par Internet en configurant API Gateway pour [s'authentifier] (http: //docs.aws.amazon.com/apigateway/dernier/developerguide/getting-started-client-side-ssl-authentication.html). –

Répondre

1

Cela ressemble à une utilisation simple du proxy http avec un nom de domaine personnalisé.

Documentation pour la mise en place proxy http est here

Documentation pour la mise en place des noms de domaine personnalisés est here

de votre utilisation description des cas, vous aurez envie de mettre en place le nom de domaine personnalisé sans base chemin afin qu'il pointe vers une seule API. Vous devez également spécifier l'étape dans le mappage du chemin de base afin que l'appelant n'ait pas à le fournir.

+0

Merci, c'est ce que je voulais. –

0

API AWS Getway a des limitations pour un domaine personnalisé par API REST. Vous ne savez pas exactement quelle est la question ici, mais vous pouvez mapper plusieurs chemins de base que vous devrez définir manuellement. double vérification here