Mappatura di un dominio locale su http: // localhost: <port_number>


1

Ho un /etc/hostsfile con le due seguenti righe:

127.0.0.2   myapp.dev
127.0.0.3   api.myapp.dev

e questo funziona benissimo. Quando ho rumore metallico myapp.devtraccia in 127.0.0.2e quando ho ping api.myapp.devtraccia in 127.0.0.3, come dovrebbe essere.

Ora ho bisogno di mappare 127.0.0.2da 127.0.0.1:3000e 127.0.0.3verso 127.0.0.1:3001.

Ciò è necessario perché sto cercando di eseguire un'applicazione Rack il cui file di configurazione config.ruè

#\ -w -p 3001

require 'emeraldfw'

ENVIRONMENT = ENV['EMERALD_ENV'].nil? ? :development : ENV['EMERALD_ENV']

use Rack::Reloader, 0
use Rack::ContentLength

if (ENVIRONMENT == :production) then
  use Rack::Static, :urls => {"/" => 'index.html'}, :root => 'fe/build'
else
  Dir.chdir('fe')
  spawn 'npm start'
  Dir.chdir('..')
end
run EmeraldFW::Loader.new

Ciò che fa questo file di configurazione è l'esecuzione dell'applicazione Rack sulla porta 3001. Quando la variabile di ambiente EMERALD_END è impostata su production, utilizza Rack::Staticper servire i file statici. D'altra parte, quando EMERALD_ENV è impostato su developmento testavvia un'applicazione ReactJS come applicazione front-end sulla porta 3000.

L'idea generale ora è accedere all'applicazione front-end su http://myapp.deve accedere all'API (back-end) su http://api.myapp.dev.

Ho provato alcuni hack e ho anche considerato la possibilità di utilizzare iptables o altri software di filtraggio dei pacchetti per farlo. So che potrei usare le regole di iptables per reindirizzare l'input da un determinato IP / Porta a un altro IP, ma preferirei trovare una soluzione più semplice.

Eventuali suggerimenti?


L'hosting virtuale è un'opzione?
Jeremiah Megel,

Usando un server come Apache o Nginx, @JeremiahMegel?
Ed de Almeida,

Stavo pensando con l'applicazione Rack stessa, ma usare Apache / Nginx / Caddy come proxy inverso con host virtuali potrebbe anche funzionare.
Jeremiah Megel,

Non so come fare con l'applicazione React stessa. Questa sarebbe l'opzione migliore, perché questo software che sto creando avrebbe un processo di installazione molto complicato se dovessi aggiungere l'installazione / configurazione di un server web o il proxy inverso ad esso.
Ed de Almeida,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.