Vagrant port 80 Weiterleitung zu 8000 mit Laravel Homestead
Mein Problem:
Kann ich nur Zugriff auf meine Webseiten über port 8000, aber nicht 80, das macht mich denke, es ist nicht umleiten von 80 bis 8000, wie es sagt, es sollte sein. Ich will einfach nur geben local.kujif.com in meinem browser und lädt die Website, die ich gelesen habe war standardmäßig port 80. Ich bin mit curl, um zu überprüfen, und es gibt:
curl 'http://local.kujif.com'
curl: (7) Failed connect to local.kujif.com:80; No error
Aber wenn ich auf add :8000 auf die url, dann funktioniert es; es gibt meine index.php die einfach druckt "test":
curl 'http://local.kujif.com:8000'
test
Meine Daten:
Bin ich mit Laravel Homestead und Landstreicher, die mit Oracle VM VirtualBox.
In der Siedlung.rb hat es die port-Weiterleitung. Ich habe nicht bearbeitet, es überhaupt:
config.vm.network "forwarded_port", guest: 80, host: 8000
config.vm.network "forwarded_port", guest: 3306, host: 33060
config.vm.network "forwarded_port", guest: 5432, host: 54320
Ich habe auch Microsoft IIS installiert für meine Arbeit Zeug. Offensichtlich habe ich zu stoppen, Wann immer ich brauche vagrant die Verwendung der localhost.
"vagrant up" zeigt:
Mein Homestead.yaml Datei:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: /Users/Tyler/.ssh/id_rsa.pub
keys:
- /Users/Tyler/.ssh/id_rsa
folders:
- map: C:\DEV\Linux
to: /var/www/
sites:
- map: homestead.app
to: /home/vagrant/Code/Laravel/public
- map: local.kujif.com
to: /var/www/kujif
variables:
- key: APP_ENV
value: local
InformationsquelleAutor Samir | 2014-06-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie sich weiterhin für die Verwendung von ports oberhalb von 1024, da Sie nicht-privilegierten ports, ABER wenn Sie wollen, können Sie ausführen, wie Sie port 80 auf dem Homestead-VM, solange Sie nicht etwas haben, das festhalten an dem port auf der host-Maschine. Habe es gerade ausprobiert und es hat funktioniert, mit ein paar Fallstricke. Zuerst ändern Sie die Zeile in der .rb-Datei aus:
Wenn Sie das Feuer Ihrer VM bis nach dem speichern erhalten Sie eine Warnung von vagrant:
Aber es funktionierte für mich. Jetzt, um tatsächlich auf die VM, die ich hatte, es zu benutzen private IP statt localhost name:
Aber sicher genug war meine Seite da und alles funktionierte. Wenn Sie sich entscheiden, Sie zu halten war, können Sie hinzufügen, die IP-Adresse in Ihre hosts-Datei, um ihm eine schöne kurze Namen.
Hoffe, das hilft.
InformationsquelleAutor noeldiaz
Ich sehe, gibt es eine akzeptierte Antwort, aber diese alternative kann auch jemand helfen.
Wenn ich das richtig verstehe Euch wirklich nicht gefällt den port "8000"!
Haben Sie versucht, die Einstellung ein eigenes Netzwerk?
Diese Weise können Sie verwenden Sie einfach diese IP-Adresse ein, oder Bearbeiten Sie die hosts-Datei zum anzeigen der lokalen Domäne die IP.
Werfen Sie einen Blick auf die Vagrant-Dokumentation:Vagrant Private Netzwerke
BTW, sollten Sie nicht brauchen, um Herunterfahren Ihres lokalen IIS-server so, das läuft auf einer ganz anderen IP-Bereich. Ich habe Apache lokal läuft, während auch Zugriff auf den VM-server. Dies ermöglicht die Verwendung von tools wie composer (ziehen in laravel) auf Ihrem lokalen, wenn nötig.
InformationsquelleAutor Wairowe
Ich bin mir nicht sicher, was die Verwirrung ist - das ist die Art, wie es funktionieren soll.
Den web-server auf der VM lauscht auf port 80. Vagrant/VirtualBox leitet, port 80 (auf der VM) , 8000 (auf localhost), so dass Sie auf der Website unter
http://localhost:8000
.Port 80 auf die VM ' s domain-name ist nicht vorhanden -, das domain-Namen-wahrscheinlich wird
localhost
.Versuchen Sie Folgendes:
dig local.kujif.com
(odernslookup
oder sogarping
- ich weiß nicht, welche tools auch unter Windows verfügbar), um herauszufinden, welche IP-Adresse, der name ist die Lösung zu. Sie werden wahrscheinlich feststellen, dass es127.0.0.1
(localhost).Könnten Sie versuchen, über die IP-Adresse in der homestead-Datei statt:
http://192.168.10.10/
- diese könnte Arbeit, aber es wird davon abhängen, wie das Netzwerk konfiguriert ist, in der VM.Ideal ist, müssen Sie Netzwerk auf "bridged" in der VM - das macht die VM Aussehen (zu Ihrem Netzwerk wie jedes andere Gerät im Netzwerk. Andere Netzwerk-Optionen, die in der VM (sorry, ich bin nicht vertraut mit den Optionen in der VirtualBox) wird die VM mit einem eigenen Netzwerk, nicht von außen zugänglich VM - dies ist der Grund, warum die port-Weiterleitung wird verwendet, um freizulegen, Netzwerk-Dienste auf der VM.
Es hängt davon ab, welche IP-Adresse
local.kujif.com
aufgelöst wird. Wenn es127.0.0.1
ist, dann ist es die gleiche wie die Eingabehttp://localhost
, die verlangen, port 8000.Ja, es wird zu 127.0.0.1, das ist, wie es ist setup in meiner hosts-Datei. Ich habe meiner VM-box und es gibt zwei hosts verbindungen mit unterschiedlichen IPs. Ich habe versucht, pingen Sie die IP ' s und beide arbeiten, also habe ich versucht, meine hosts-Datei zu beheben local.kujif.com zu jeder dieser IP-Adressen und weder gearbeitet. Wenn ich es bekommen kann, verwenden Sie eine der diese VM-IPs-würde es umgehen die Notwendigkeit für :8000?
Ja, sollte es. An diesem Punkt sind Sie wahrscheinlich zu tief in die Konfiguration der VM und ich muss zugeben, ich bin nicht so vertraut mit VirtualBox (ich bin mehr vertraut mit VMWare-ESXi).
Hey, aber ich wirklich zu schätzen die Hilfe bis zu diesem Punkt, das ist etwas, das ich arbeiten kann. Danke!!!
InformationsquelleAutor Kryten