Semakan Port 80: Panduan Troubleshooting HTTP

Apabila laman web awak tak mahu dimuatkan atau pelayan web awak tak boleh dimulakan, pemeriksaan port 80 selalunya merupakan langkah penyelesaian masalah pertama yang perlu awak ambil. Port 80 berfungsi sebagai pintu masuk lalai untuk trafik HTTP, menjadikannya penting untuk komunikasi web. Sama ada awak sedang menyediakan pelayan web baharu, memindahkan persekitaran hosting, atau tiba-tiba menghadapi ralat sambungan, memahami cara mendiagnosis dan membetulkan masalah port 80 boleh menjimatkan berjam-jam kekecewaan. Panduan ini akan membimbing awak melalui senario biasa, mesej ralat sebenar, dan penyelesaian praktikal untuk memastikan perkhidmatan web awak berjalan lancar.

Memahami Port 80 dan Senario Ralat Biasa

Port 80 adalah port standard untuk trafik web HTTP. Apabila awak menaip alamat laman web tanpa menyatakan nombor port, pelayar awak secara automatik menyambung ke port 80. Masalah timbul apabila sesuatu menyekat port ini atau apabila pelbagai perkhidmatan cuba menggunakannya secara serentak.

Mesej ralat pelayar biasa termasuk "This site can't be reached," "ERR_CONNECTION_REFUSED," atau "Unable to connect." Dalam log pelayan, awak mungkin melihat ralat "Address already in use" atau "Permission denied." Mesej-mesej ini menunjukkan masalah asas yang berbeza yang memerlukan pendekatan penyelesaian masalah khusus.

Pelayar memaparkan mesej ralat sambungan port 80

Konflik Persediaan Web Hosting

Semasa konfigurasi pelayan web awal, konflik port kerap berlaku. Jika awak memasang Apache, Nginx, atau IIS, pemasangan mungkin gagal jika perkhidmatan lain sudah menduduki port 80. Skype, klien VPN tertentu, dan juga beberapa program antivirus boleh menggunakan port ini.

Untuk mengenal pasti apa yang menggunakan port 80 pada Windows, buka Command Prompt sebagai pentadbir dan jalankan:

netstat -ano | findstr :80

Pada Linux atau macOS, gunakan:

sudo lsof -i :80

Arahan ini mendedahkan ID proses (PID) yang menduduki port tersebut. Awak kemudian boleh memutuskan sama ada untuk menghentikan perkhidmatan itu atau mengkonfigurasi pelayan web awak untuk menggunakan port yang berbeza.

Konflik Pelbagai Pelayan Web

Menjalankan beberapa pelayan web pada mesin yang sama mewujudkan konflik port 80 yang tidak dapat dielakkan. Awak mungkin menghadapi ini apabila menguji perisian pelayan yang berbeza atau menjalankan persekitaran pembangunan bersama pelayan pengeluaran. Pelayan kedua yang cuba dimulakan akan gagal dengan ralat "Address already in use."

Penyelesaiannya melibatkan sama ada menghentikan satu pelayan, mengkonfigurasi mereka untuk menggunakan port yang berbeza (seperti 8080 atau 8000), atau menggunakan persediaan reverse proxy di mana satu pelayan mengendalikan trafik masuk dan menghalakannya kepada yang lain berdasarkan domain atau laluan.

Terminal menunjukkan hasil arahan netstat untuk pemeriksaan port 80

Membezakan Antara Sekatan ISP, Firewall, dan Router

Apabila melakukan pemeriksaan port 80 mendedahkan masalah kesambungan, sekatan boleh berasal dari tiga tahap berbeza. Memahami yang mana satu memberi kesan kepada awak menentukan laluan penyelesaian awak.

Penyekatan Port Peringkat ISP

Banyak Pembekal Perkhidmatan Internet menyekat trafik port 80 masuk pada sambungan kediaman untuk menghalang pelanggan daripada menjalankan pelayan web. Dasar ini melindungi rangkaian mereka dan menggalakkan peningkatan pelan perniagaan. Awak akan menyedari ini jika pelayan awak berjalan lancar secara tempatan tetapi pengguna luar tidak dapat menyambung.

Untuk menguji penyekatan ISP, gunakan alat pemeriksa port kami. Jika port kelihatan tertutup walaupun pelayan awak berjalan dan peraturan firewall membenarkan trafik, ISP awak berkemungkinan menyekatnya. Penyelesaian termasuk menghubungi ISP awak untuk pelan perniagaan, menggunakan port yang berbeza seperti 8080 (walaupun pengguna mesti menyatakannya dalam URL), atau menyediakan reverse proxy melalui VPS yang memajukan trafik.

Konfigurasi Firewall Tempatan

Firewall sistem operasi kerap menyekat port 80 secara lalai untuk keselamatan. Windows Firewall, iptables pada Linux, dan firewall macOS semuanya boleh menghalang sambungan masuk walaupun pelayan awak berjalan dengan betul.

Pada Windows, awak perlu membuat peraturan masuk yang membenarkan port 80 melalui Windows Defender Firewall. Navigasi ke Advanced Settings, pilih Inbound Rules, dan buat peraturan baharu untuk port TCP 80.

Untuk Linux menggunakan iptables, benarkan port 80 dengan:

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Untuk sistem menggunakan ufw (Ubuntu dan derivatifnya):

sudo ufw allow 80/tcp

Selepas membuat perubahan firewall, sahkan peraturan telah berkuat kuasa dan uji kesambungan dari kedua-dua rangkaian tempatan dan luaran.

Masalah Port Forwarding Router

Apabila menempatkan pelayan di belakang router rumah, awak mesti mengkonfigurasi port forwarding untuk mengarahkan trafik luaran ke alamat IP dalaman pelayan awak. Tanpa peraturan forwarding yang betul, permintaan luaran tidak akan sampai ke mesin awak.

Akses panel pentadbir router awak (biasanya di 192.168.1.1 atau 192.168.0.1), cari bahagian port forwarding, dan buat peraturan yang memajukan port 80 luaran ke alamat IP tempatan pelayan awak pada port 80. Pastikan pelayan awak mempunyai IP tempatan statik atau menggunakan tempahan DHCP untuk mengelakkan IP daripada berubah.

Panel pentadbir router menunjukkan persediaan forwarding port 80

Aliran Kerja Penyelesaian Masalah Sistematik

Apabila menghadapi masalah port 80, ikuti urutan diagnostik ini untuk mengenal pasti punca masalah dengan cepat:

  1. Sahkan perkhidmatan sedang berjalan: Periksa bahawa proses pelayan web awak sebenarnya aktif menggunakan pengurus tugas atau arahan pemantauan proses.
  2. Uji kesambungan tempatan: Akses localhost atau 127.0.0.1 dalam pelayar awak. Jika ini gagal, masalahnya adalah dengan konfigurasi pelayan atau firewall tempatan.
  3. Uji kesambungan LAN: Cuba mengakses pelayan dari peranti lain pada rangkaian tempatan awak menggunakan IP tempatan pelayan. Kegagalan di sini menunjukkan masalah firewall tempatan.
  4. Uji kesambungan luaran: Gunakan peranti mudah alih pada data selular atau pemeriksa port dalam talian. Kegagalan pada peringkat ini menunjukkan konfigurasi router atau penyekatan ISP.
  5. Semak log: Periksa log ralat pelayan untuk mesej khusus tentang kegagalan pengikatan port atau masalah kebenaran.

Log pelayan biasanya terletak di /var/log/apache2/ atau /var/log/nginx/ pada Linux, atau dalam direktori pemasangan pada Windows. Cari cap masa yang sepadan dengan bila awak memulakan perkhidmatan atau bila percubaan sambungan gagal.

Perkara Utama:

  • Konflik port 80 sering berpunca daripada pelbagai perkhidmatan bersaing untuk port yang sama atau sekatan firewall menyekat trafik
  • Gunakan arahan netstat atau lsof untuk mengenal pasti proses mana yang menduduki port 80 sebelum menyelesaikan masalah selanjutnya
  • Sekatan ISP, firewall tempatan, dan konfigurasi router mewujudkan gejala berbeza yang memerlukan penyelesaian tersendiri
  • Ikuti pendekatan ujian sistematik dari kesambungan tempatan ke luaran untuk mengenal pasti titik penyekatan yang tepat

Kesimpulan

Berjaya menyelesaikan masalah port 80 memerlukan pemahaman tentang lapisan berbeza di mana masalah boleh berlaku. Dengan menguji secara sistematik dari mesin tempatan awak ke luar melalui rangkaian, firewall, router, dan ISP awak, awak boleh mengenal pasti dengan tepat di mana trafik disekat. Sama ada awak berhadapan dengan perkhidmatan yang bercanggah, peraturan firewall, atau sekatan ISP, arahan diagnostik dan penyelesaian yang digariskan di sini menyediakan laluan yang jelas ke hadapan. Ingat bahawa pertimbangan keselamatan harus membimbing keputusan awak - hanya buka port 80 apabila perlu dan pastikan perisian pelayan web awak kekal dikemas kini dengan tampung keselamatan.

FAQ

Gunakan arahan netstat -ano | findstr :80 pada Windows atau sudo lsof -i :80 pada Linux/macOS untuk melihat sama ada ada sesuatu yang mendengar pada port 80. Untuk ujian luaran, gunakan alat pemeriksa port dalam talian semasa pelayan web awak berjalan untuk mengesahkan kebolehcapaian dari luar rangkaian awak.

Ini biasanya menunjukkan sama ada konfigurasi port forwarding router yang hilang atau penyekatan port peringkat ISP. Pertama, pastikan awak telah menyediakan port forwarding dalam router awak untuk mengarahkan trafik port 80 ke alamat IP tempatan pelayan awak. Jika itu dikonfigurasi dengan betul, ISP awak mungkin menyekat sambungan port 80 masuk pada pelan kediaman.

Ralat ini bermakna proses lain sudah menggunakan port 80. Punca biasa termasuk contoh pelayan web lain, Skype, perisian VPN tertentu, atau IIS pada Windows. Gunakan arahan netstat atau lsof untuk mengenal pasti proses yang bercanggah, kemudian sama ada hentikan ia atau konfigurasi pelayan web awak untuk menggunakan port yang berbeza seperti 8080.

Tidak secara langsung pada port yang sama. Walau bagaimanapun, awak boleh mengkonfigurasi satu pelayan web (seperti Nginx) sebagai reverse proxy pada port 80 yang menghala permintaan ke pelayan web lain yang berjalan pada port berbeza berdasarkan nama domain atau laluan URL. Ini membolehkan awak menempatkan pelbagai aplikasi sambil mempersembahkan semuanya melalui port 80 standard.

Laman web moden harus menggunakan port 443 dengan penyulitan HTTPS untuk keselamatan. Walaupun port 80 kekal perlu untuk sambungan HTTP awal, amalan terbaik melibatkan pengalihan automatik semua trafik port 80 ke port 443 (HTTPS). Ini melindungi data pengguna dan meningkatkan kedudukan enjin carian, kerana Google mengutamakan laman yang selamat.