Majukan port dari terminal
Pelayan yang anda mulakan dalam terminal sesuatu perbualan hanya diterbitkan
untuk ruang itu. Panel port mengesan pendengar yang dimulakan oleh aplikasi
ini di sana, memetakannya, dan memberi anda alamat bagi setiap tempat yang anda
mungkin mahu mencapainya. Dua ruang boleh kedua-duanya mendengar pada 5173;
peta mereka tidak pernah bercampur.
Tiada apa-apa di sini membuka mesin itu: setiap laluan dicipta oleh pelayan, atas permintaan, dan mati bersama terminal atau stesen.
Lihat apa yang sedang mendengar
Bahagian bertajuk “Lihat apa yang sedang mendengar”- Buka Terminal (VM) perbualan itu atau shell hos (dalam ruang atau pada halaman PR).
- Mulakan pelayan anda —
pnpm dev,python -m http.server 8000, apa-apa sahaja. - Dalam beberapa saat, ikon plag di penjuru kanan atas terminal akan mendapat satu titik. Kliknya.
Panel itu menyenaraikan setiap port yang mendengar berserta proses yang
memilikinya, sebagai 3000 → 3000: port yang diikat oleh proses di sebelah
kiri, port yang dijawabnya secara setempat di sebelah kanan (nombor yang sama
apabila ia bebas pada mesin anda). Setiap baris juga menyatakan sama ada
localhost desktop, Penyemak imbas (VM), dan Android boleh mencapainya.
Penemuan adalah terbatas: Terminal (VM) ditinjau di dalam tetamu itu; shell hos ditinjau daripada pepohon proses PTY sesi itu. Ruang lain, dan proses lain pada Mac anda, tidak disenaraikan.
Port baharu dalam terminal ini dimajukan secara automatik. Matikan Hantar port secara automatik dalam panel yang sama jika anda hanya mahu port yang anda tambah sendiri.
Capainya dari komputer ini
Bahagian bertajuk “Capainya dari komputer ini”Gunakan Salin URL setempat pada baris itu — http://localhost:3000.
Pemajuan itu mendengar pada loopback sahaja, jadi tiada apa-apa lagi pada
rangkaian anda boleh melihatnya.
Jika dua ruang kedua-duanya mendedahkan 5173 tetamu dan mesin anda sudah
memegang 127.0.0.1:5173, ruang kedua mengekalkan 5173 tetamu dan mendapat
port setempat efemeral. Salin URL menggunakan nombor di sebelah kanan.
Pada shell hos, proses itu sudah berada pada mesin anda. Memetakan port setempat yang sama tidak memberi sebarang kesan; memilih port setempat yang berbeza mengikat proksi loopback kepada port yang anda pilih.
--host (atau mengikat 0.0.0.0) tidak menjadikan Penyemak imbas (VM)
terasing mampu mencapai pelayan pada Mac. Tetamu mempunyai loopback sendiri;
pelayan menanam terowong ke dalam tetamu itu apabila tab Penyemak imbas berada
dalam ruang yang sama.
Capainya dari Penyemak imbas (VM)
Bahagian bertajuk “Capainya dari Penyemak imbas (VM)”Buka penyemak imbas terasing dalam perbualan yang sama. Taip
localhost:<port sebelah kiri> — nombor yang diikat oleh proses. Pemetaan
semula (5173 → 3000) juga menjawab pada nombor sebelah kanan dalam penyemak
imbas itu, jadi Salin URL berfungsi di sana juga. browser_use ejen boleh
menavigasi ke mana-mana satu daripadanya. Pelayan dalam Ruang A tidak pernah
muncul sebagai localhost:5173 dalam penyemak imbas Ruang B.
Gunakan localhost, bukan IP LAN dan bukan --host. Tetamu mempunyai loopback
sendiri; terowong itu mendengar di sana pada kedua-dua IPv4 dan IPv6.
Halaman yang membuka banyak sambungan serentak (berpuluh-puluh aset, soket muat semula langsung) berkongsi terowong yang sama itu. Penyemak imbas (VM) memultiplekskannya ke satu exec berterusan, jadi lonjakan pengambilan bukan satu proses baharu bagi setiap sambungan dan tidak tamat masa menjadi halaman putih.
Dalam satu ruang, pemajuan Terminal (VM) mengalahkan shell hos pada nombor yang sama. Merentas ruang tiada keutamaan — ia peta yang berasingan.
Capainya dari Android
Bahagian bertajuk “Capainya dari Android”Buka tab Android ruang itu. localhost:<port> emulator itu kemudian
dibalikkan kepada port yang diterbitkan oleh ruang ini (adb reverse). Satu
emulator adalah global bagi peranti: melampirkan Ruang B menyasarkan semula
:5173 kepada B dan menggugurkan milik A. Tutup tab itu dan pembalikan yang
ditanam oleh stesen ini akan dibuang.
Simulator iOS sememangnya Mac itu sendiri — tiada pembalikan. iPhone fizikal masih memerlukan perkongsian LAN.
Kongsinya pada rangkaian anda
Bahagian bertajuk “Kongsinya pada rangkaian anda”⋯ → Kongsi pada rangkaian setempat menerbitkan port itu pada
<server-ip>:<port rawak> — berguna untuk membuka halaman itu pada telefon
anda, atau apabila pelayan berjalan pada mesin lain.
- Port LAN sentiasa diberikan oleh OS, tidak pernah nombor tetamu, jadi pendedahan ialah alamat yang sengaja dan jelas dan bukan alamat yang boleh diteka.
- Ia kekal peribadi (loopback sahaja) sehingga anda menukarnya, dan ⋯ → Setempat sahaja mengeluarkannya semula daripada rangkaian.
Berikannya nama — dengan HTTPS
Bahagian bertajuk “Berikannya nama — dengan HTTPS”⋯ → Tetapkan domain penyemak imbas (.test) memberikan port itu domain dev
seperti myapp.test. Di dalam Penyemak imbas (VM), https://myapp.test
kemudian memuatkan pelayan anda dengan ikon kunci yang sah — berguna untuk
apa-apa sahaja yang berkelakuan berbeza pada asalan bernama atau konteks
selamat (kuki, service worker, panggil balik OAuth).
- Domain mesti berakhir dengan
.testatau.localhost— dua TLD yang dikhaskan untuk pembangunan, jadi nama dev tidak pernah boleh menutupi tapak sebenar. - Nama domain adalah unik pada pelayan; nombor port tidak. Dua ruang
boleh kedua-duanya menggunakan
5173, tetapi kedua-duanya tidak boleh menuntutmyapp.test. - Sijil itu datang daripada autoriti setempat yang ditempa pada pelayan anda kali pertama ia diperlukan. Kuncinya tersimpan di bawah direktori data pelayan dan tidak pernah masuk ke mana-mana tetamu; penyemak imbas terasing mempercayai kunci itu sahaja, jadi TLS ke internet sebenar masih disahkan seperti biasa.
- Domain itu diselesaikan di dalam Penyemak imbas (VM) sahaja. Penyemak
imbas anda sendiri pada hos menggunakan
localhost:<port>sebaliknya. http://myapp.testbiasa juga berfungsi.
Majukan port secara manual
Bahagian bertajuk “Majukan port secara manual”Tambah port di bahagian bawah panel memetakan port sebelum (atau tidak kira sama ada) apa-apa mendengarnya. Pemajuan manual mengekalkan alamatnya semasa pelayan anda dimulakan semula — baris itu memaparkan tidak mendengar sehingga ia kembali — manakala pemajuan automatik hilang apabila portnya hilang. Pada shell hos anda juga boleh menetapkan port setempat yang berbeza.
Bagaimana ia kekal terbatas
Bahagian bertajuk “Bagaimana ia kekal terbatas”Port dikunci mengikut ruang kerja dan ruang. Peta port hipervisor sendiri ditetapkan apabila mesin but, jadi Terminal (VM) menaiki dua saluran sempit yang dikawal oleh pelayan: satu lorong masuk yang telah dicipta lebih awal ke dalam tetamu yang enggan menyambung ke mana-mana port yang tetamu tidak benar-benar mendengar, dan terowong terbalik yang dibiarkan terbuka oleh pelayan untuk Penyemak imbas (VM) dan Android. Shell hos tidak pernah mengimbas seluruh mesin. Tiada pendengar yang pernah dicipta di dalam tetamu yang tidak diletakkan oleh pelayan di sana, dan semuanya diruntuhkan bersama terminal atau stesen. Reka bentuk ini diterangkan dalam Stesen dan persekitaran terasing; port terkhas yang tepat dan peraturan domain ada dalam rujukan stesen.
Berkaitan
Bahagian bertajuk “Berkaitan”- Berikan ejen mesin untuk diuji — membuka, menonton dan mengambil alih stesen
- Rujukan stesen — port terkhas, TLD dev, lalai