2017-04-23 3 views
0

I Schienen 5, die mit einem Standard-puma-Server arbeiten und hören Sie localhost bin mit: 3000meinen Standard localhost Port in Rails ändern 5

ich will es wie 192.168.0.0:3000

auf einen neuen Anschluss hören

Kann jemand helfen? danke

+0

Mögliches Duplikat von [Wie ändere ich den Standardport einer Rails 4 App?] (Http://stackoverflow.com/questions/18103316/how-to-change-default-port-of-a-rails-4- App) – Iceman

+0

Warum ist es keine gültige Lösung in Rails 5? –

+0

Aber der Port ist der gleiche ... –

Antwort

0

Sie können Sie den Server mit der Option -b wie

rails s -p 3000 -b 0.0.0.0 wo -p ist für Port-Option und 0.0.0.0 binden binden localhost IP, wenn es 192.168.0.0 ist und Sie können Ihre App öffnen mit verbundenen Geräten in Ihrem Netzwerk. Wenn Sie suchen, um Ihre lokale IP-Adresse zu ändern..thas ist keine Frage Schienen.

2

Schienen 5 kommt mit Puma, die in config/puma.rb konfiguriert ist. Sie können die Standardportnummer in dieser Datei ändern oder sie überschreiben, indem Sie die Umgebungsvariable PORT festlegen, bevor Sie die Schienen starten.

@Iceman: In Rails 5 ist es nicht erforderlich, dass Monkey Patch Rails den Standardport außer Kraft setzt, sodass die Antwort, auf die Sie sich bezogen haben, nicht länger relevant ist.

Edit: beim erneuten Lesen der ursprünglichen Frage, merke ich, dass Sie nicht den Port ändern möchten, sondern die Bindungsadresse.

# Specifies the `port` that Puma will listen on to receive requests; default is 3000. 
# 
#port  ENV.fetch("PORT") { 3000 } 
bind  'tcp://192.168.0.1:3000' 

@JohnLinux: Rails ist nicht der Tatsache bewusst, dass Puma eine andere bind-Adresse verwendet, so dass es Sie sagt, was es übergeben Sie können durch Bearbeiten config/puma.rb und Ersetzen der port Anweisung mit einer bind Aussage machen, dass runter zu Puma (was Puma ignoriert). Es gibt mehrere Probleme sowohl in Rails als auch in Pumas Github-Issue-Tracker, und AFAICT gab es Änderungen an beiden Enden, um die Kontrolle der Bind-Adresse zurück an Rails zu übergeben, aber ich habe noch nicht mit aktualisierten Edelsteinen gespielt, um zu sehen, wie das ist weit gekommen. Es ist wichtig, die port Aussage zu kommentieren, sonst bindet Puma tatsächlich an beide!

+0

Dies ist nützlich, aber warum heißt es immer noch' Rails 5.0.3 Anwendung beginnt in der Entwicklung auf http: // localhost: 3000' wenn es startet, obwohl es auf 3003 hört. – Steve

+0

Lustig sollten Sie das erwähnen. Das habe ich nie bemerkt. Wie sich herausstellt, hört es sowohl auf 3000 als auch auf 3003 zu, was natürlich kläglich scheitert, wenn Sie zwei Instanzen auf demselben Computer runtwo. Es scheint keinen einfachen Wechsel zu geben, um dieses Verhalten zu deaktivieren. Es gibt eine Reihe von Problemen auf Github für Puma, die Teile dieser Situation ansprechen, aber keine, die AFAICT freigeben. – BertD

+0

Scheint, als ob dieses Problem mit der neuesten Version von Rails behoben wurde. – mutantkeyboard

Verwandte Themen