Tillad, at serveren kører inde i WSL for at være tilgængelig udenfor Windows 10 Host

Windows 10's Windows Subsystem til Linux (WSL) er stor. Jeg bruger det som mit vigtigste go-to-udviklingsmiljø til nogle gange nu. Med den seneste store Creators Update virker Microsoft virkelig svært vinde nogle webudviklere tilbage der forlod det er Windows Eco-system årtier siden. Som Microsoft udtalte, er en af ​​de største fordele for WSL rettet mod det stadigt voksende webudviklerfællesskab. WSL tilbyder native build-værktøjskæder uden grimme hack-løsninger til Windows er et stort plus. Den mest moderne stack som Ruby on Rails og Node.js fungerer ret godt under WSL (Skaberne Opdatering i det mindste).

Hvis du allerede har brugt Bash på Ubuntu på Windows (også WSL) for at gøre webudvikling vil du bemærke, at server-instanser, der kører inde i basen som standard, kun kan fås via localhost: portnummer. Det ville være ok, hvis alt du behøver, er at få adgang til webapp'en via host-only metode, hvilket betyder at gå til adresselinjen i browseren og indtaste http://localhost:8080. Hvis du har brug for adgang til WSL-server instans uden for værten Windows 10, ville du finde ud af at det ikke er tilgængeligt. Dette skyldes ikke manglende funktioner eller understøttelse fra Windows Subsystem til Linux, men snarere Windows 10, værten ved ikke, hvilken port der skal åbnes for ekstern adgang. I modsætning til nogle applikationer, der anmoder om firewall tilladelser, når du kører appen første gang, beder WSL ikke værten om at tillade, at en bestemt port åbnes, når du starter en knude eller railserver inde i Ubuntu på Windows. Måske vil Microsoft i fremtidige udgivelser tillade WSL at sende et signal til værten, når en bestemt port begynder at lytte inde i WSL. Ikke desto mindre er her, hvordan du tillader, at din server er tilgængelig eksternt udenfor Windows 10s værtsmaskine.

Gå til Windows Firewall med avanceret sikkerhed

Føj til Ny regel

Indstil regeltype som port.

Indtast en Specifik lokal havn Din server kører under WSL, i dette tilfælde har jeg port 3000, der kører min nodeserver.

Under fanen Handling skal du sørge for at "Tillad forbindelsen"

Hvis du ikke er sikker på hvilken profil, skal du vælge alle for at anvende denne regel.

Giv denne regel et beskrivende navn, så det vil være let at identificere under Firewall-indstillingerne.

Når reglen er oprettet, vil du kunne finde den i nedenstående tabel.

Prøv nu at få adgang til serveren hostet inde i WSL uden for værten Windows 10 maskine via værtsnavn eller IP-adresse. Du skal kunne indlæse websiden uden problemer.

Sådan får du adgang til en server, der kører inde i WSL uden for værten Windows 10 maskine. Selvfølgelig, når din udviklingsserverport ændres, skal du enten opdatere reglen eller oprette en ny regel for at rumme den nye port.

Kilde

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.