Setelah menginstal TeamViewer, saya telah mengubah port wampserver ke 8080, jadi alamatnya adalah http://localhost:8080.
Untuk file host yang terletak di C: \ WINDOWS \ system32 \ drivers \ etc \, saya juga telah membuat perubahan seperti di bawah ini
SEBELUM
127.0.0.1 www.example.com
SETELAH
127.0.0.1:8080 www.example.com
Ketika saya mengakses www.example.com, itu tidak mengarahkan ulang ke wampserver saya, bagaimana cara memperbaikinya?
https://www.example.com
harus pergi ke port 8080? atau ke default 443 (sebagaimana mestinya) Yang berarti: apakah Anda ingin https juga dialihkan ke port 8080 dari localhost Anda? Atau Anda tidak peduli sama sekali di mana ini akan diarahkan?Jawaban:
The
hosts
file untuk resolusi nama host saja (pada Windows serta pada Unix-seperti sistem). Anda tidak dapat memasukkan nomor port di sana, dan tidak ada cara untuk melakukan apa yang Anda inginkan dengan konfigurasi tingkat OS umum - browser adalah yang memilih port untuk dipilih.Jadi gunakan bookmark atau semacamnya.
(Beberapa perangkat lunak firewall / perutean mungkin mengizinkan pengalihan port keluar, tetapi itu tidak benar-benar terdengar seperti opsi yang menarik untuk ini.)
sumber
Apa yang Anda inginkan dapat dicapai dengan memodifikasi file host melalui aplikasi Fiddler 2 .
Ikuti langkah ini:
sumber
Saya berhasil mencapai ini dengan menggunakan alat Networking termasuk Windows
netsh
.Seperti yang ditunjukkan Mat: File host hanya untuk resolusi nama host, jadi kombinasi keduanya melakukan trik untuk saya.
Contoh
Gambaran
Tindakan
localhost:8081
127.65.43.21 example.app
127.0.0.0/8
(127.x.x.x
) dapat digunakan.127.65.43.21:80
tidak ditempati oleh layanan lain.netstat -a -n -p TCP | grep "LISTENING"
netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.65.43.21 connectport=8081 connectaddress=127.0.0.1
http://example.app
Catatan:
- Modifikasi perintah / file ini harus dijalankan dengan hak Admin
- netsh portproxy membutuhkan pustaka ipv6 bahkan hanya untuk menggunakan v4tov4, biasanya mereka juga akan disertakan secara default, jika tidak menginstalnya menggunakan perintah berikut:
netsh interface ipv6 install
Anda dapat melihat entri yang telah Anda tambahkan dengan perintah:
netsh interface portproxy show v4tov4
Anda dapat menghapus entri dengan perintah berikut:
netsh interface portproxy delete v4tov4 listenport=80 listenaddress=127.65.43.21
Tautan ke Sumber Daya:
sumber
netsh interface ipv6 install
127.0.0.1
sebagai alamat yang cocokportainer.local
dengan file host saya. Lalu saya jalankan:netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.0.0.1 connectport=9000 connectaddress=127.0.0.1
Tekan enter key di cmd / PowerShell untuk menjalankannya. Setelah ini, keluar dari netsh dengan mengetikexit
. Di browser, mengetikhttp://portainer.local
sekarang membawa saya ke tempat yanghttp://localhost:9000
dulu. Ini bekerja seperti pesona bagi saya.Fiddler2 -> Aturan -> Aturan Kustom
kemudian temukan fungsi OnBeforeRequest pada script berikutnya di akhir:
sumber
Cara paling sederhana adalah menggunakan Ergo sebagai proksi terbalik Anda: https://github.com/cristianoliveira/ergo
Anda mengatur layanan dan IP-nya: PORT dan ergo merutekannya untuk Anda :).
Anda dapat menggunakan hal yang sama
nginx
atauapache
tetapi Anda harus mengonfigurasinya.sumber
-Anda dapat menggunakan alamat gratis apa saja di jaringan 127.0.0.0/8, dalam kasus saya diperlukan ini untuk python flask dan inilah yang telah saya lakukan: tambahkan baris ini di file hosts (Anda dapat menemukannya di windows di bawah: C: \ Windows \ System32 \ drivers \ etc):
Pastikan port tersebut adalah port default "80" dalam kasus saya, inilah yang ada di dalam python flask:
app.run("127.0.0.5","80")
sekarang jalankan kode Anda dan ramban
flask.dev
sumber
Jika yang terjadi adalah Anda memiliki server lain yang berjalan di localhost dan Anda ingin memberi server baru ini nama host lokal yang berbeda
http://teamviewer/
Saya pikir apa yang sebenarnya Anda cari adalah fungsi Host Virtual. Saya menggunakan Apache jadi saya tidak tahu bagaimana daemon web lain mendukung ini. Mungkin itu disebut Alias. Berikut ini dokumentasi Apache:
Contoh Apache Virtual Hosts
sumber
Menggunakan netsh dengan connectaddress = 127.0.0.1 tidak berhasil untuk saya.
Meskipun mencari di mana-mana di internet, saya tidak dapat menemukan solusi yang memecahkan masalah ini untuk saya, yaitu menggunakan connectaddress = 127.xxx (mis. 127. alamat ipv4, hanya tidak 127.0.0.1) karena ini muncul untuk menghubungkan kembali ke localhost saja sama tetapi tanpa batasan, sehingga loopback bekerja di netsh.
sumber
sumber
Anda memerlukan NGNIX atau Apache HTTP server sebagai server proxy untuk meneruskan permintaan http ke aplikasi yang sesuai -> yang mendengarkan port tertentu (atau melakukannya dengan CNAME yang menyediakan perusahaan Hosting). Ini adalah solusi paling kuat dan ini hanya cara yang sangat mudah untuk terus menambahkan subdomain baru, atau menambahkan domain baru secara otomatis ketika catatan DNS diarahkan ke server.
Era Apache menyebutnya Virtual host -> httpd.apache.org/docs/trunk/vhosts/examples.html
NGINX -> Blok Server https://www.nginx.com/resources/wiki/start/topics/examples/server_blocks/
sumber