1

J'ai un scénario où je veux construire un site qui servirait de CMS et de réseau social. Pendant tout ce temps, je n'utiliserais Rails que comme fournisseur d'API. À l'origine, je devais faire le côté client dans React with Redux, mais au fur et à mesure que le build grandissait, je me suis retrouvé à écrire des tonnes de texte pour les tâches les plus simples (CMS sage). Au lieu d'aller jusqu'au bout de la construction, j'ai pensé qu'il serait préférable de construire le CMS en utilisant Rails, c'est-à-dire que vous obtenez vos outils basés sur CRUD directement de la boîte. À ce stade, j'aurais l'API et le CMS dans la même application Rails.Est-il possible d'exécuter une application Rails et une application React sur le même domaine?

L'aspect réseau social de l'écriture de messages, la création de collections, etc. serait toujours fait en utilisant React. Je me demandais s'il était tout à fait possible d'accomplir un scénario où je pourrais faire séparément une application Rails et SPA sous le même domaine. Toute ressource serait grandement appréciée. Je suis conscient qu'il existe une gemme React pour les rails mais que je préfère l'utiliser en mode autonome pour tirer parti de Redux et d'autres paquets de nœuds. Envisagez d'utiliser un proxy inverse comme Nginx.

Répondre

1

Nginx vous permet de cartographier des chemins différents à différents hôtes ou même hôte (avec des ports différents)

location /cms/ { 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $remote_addr; 
    proxy_set_header Host $host; 
    proxy_pass http://192.168.1.2:3000; 
    } 

location /social/ { 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $remote_addr; 
    proxy_set_header Host $host; 
    proxy_pass http://192.168.1.2:3100; 
} 

Vous pouvez trouver plus d'informations dans l'URL suivante

https://www.nginx.com/resources/admin-guide/reverse-proxy/

+0

Ceci est la meilleure solution. Lorsque vous utilisez NGINX, vous pouvez exécuter de nombreuses applications sur différents environnements et ports, et avec le proxy inverse, vous pouvez rediriger le trafic entrant vers l'application correcte. –