Apache Server pada Windows 7 membuka port?

20

Saya telah menginstal Apache 2.2.14 pada Windows 7 dan dapat melihat halaman web saya menggunakan keduanya http://localhostdan http://127.0.0.1tetapi ketika saya mencoba mengakses server dari komputer lain pada router yang sama, itu gagal. Itu juga gagal ketika saya menggunakan alamat DynDNS yang telah saya petakan.

Ini berfungsi dengan baik di bawah Windows XP sebelum saya memutakhirkan ke Windows 7.

Saya menduga masalahnya adalah sesuatu seperti port 80 tidak dibuka untuk akses luar ke komputer.

Adakah yang tahu cara membuka porta itu di Windows Firewall, atau jika ada sesuatu yang dikunci apa itu dan bagaimana cara membukanya?

WilliamKF
sumber

Jawaban:

34

Untuk menambahkan aturan di Windows Firewall untuk port 80, lakukan hal berikut:

  • Buka Control Panel dan luncurkan "Windows Firewall"
  • Pergi ke "Pengaturan Lanjut"
  • Pilih "Aturan Masuk" di panel kiri
  • Pilih "Aturan Baru" di panel kanan
  • Di Wisaya Aturan Masuk Baru, pilih "Port" sebagai Jenis Aturan, lalu klik "Berikutnya"
  • Pilih "TCP dan masukkan" 80 "(dan port lain yang ingin Anda buka) di" port lokal spesifik ", lalu klik" Next "
  • Pilih "Izinkan koneksi", lalu klik "Next"
  • Pilih lokasi jaringan di mana aturan tersebut berlaku (pilih semuanya jika Anda tidak yakin), lalu klik "Berikutnya"
  • Berikan nama dan deskripsi opsional

Itu harus dilakukan.

Snark
sumber
2
Anda mungkin menemukan bahwa sudah ada aturan masuk "Apache" di bawah pengaturan firewall. Jika Anda memeriksa aturan ini, Anda akan menemukan beberapa pengaturan di bawah tab General, salah satunya adalah Action. Ada dua opsi - "Izinkan Koneksi" dan "Izinkan Koneksi jika Aman". Anda dapat memilih salah satu dari opsi itu atas kebijakan Anda, tetapi saya sarankan Anda membaca dan memahami opsi "Kustomisasi" yang terakhir.
Aaron Newton
Tips: Anda akan dapat mengunjungi port itu, tetapi Anda mungkin masih tidak dapat melakukan ping ip!
fzyzcjy
3

Sepertinya Windows 7 Firewall memiliki ketakutan akan port 80.

Ini akan membuka port tersebut jika Anda mengonfigurasinya dengan cara ini:

Server Apache → UDP → semua port.
Server Apache → TCP → semua port.

Itu buruk karena Apache biasanya bekerja dengan port tertentu (maksud saya 80, beberapa menggunakan 8080, dan 443), tetapi saya tidak menemukan cara lain untuk membuat aturan firewall Apache berfungsi.

Sergio Abreu
sumber
2

sepertinya Anda perlu menambahkan pengecualian (port 80) ke windows firewall.

Saya yakin ini dapat dicapai dengan membuka panel kontrol firewall dan mengklik sekitar sedikit. Di XP setidaknya cukup mudah.

Masalahnya bisa juga bahwa apache hanya dikonfigurasi untuk mendengarkan pada antarmuka loopback. Anda dapat mengujinya dengan menjalankan netstat atau dengan mencoba mengunjungi alamat mesin Anda yang lain, seperti http://192.168.1.101/

pengguna23307
sumber
2

Saya hanya milik saya yang bekerja. Saya membuat aturan pengecualian untuk port 80 di windows firewall. Saya menjalankan windows 7 di laptop dan OSX Leopard di Mac saya. Pengecualian saja tidak memperbaiki masalah. Saya kemudian mematikan Firewall dan saya dapat terhubung ke apache di laptop dari mac saya. Apa yang benar-benar menyelesaikan masalah adalah di panel kontrol> jaringan dan pusat berbagi. Saya mengubah pengaturan untuk jaringan aktif dan menetapkannya sebagai jaringan rumah. Jika Anda memeriksa win firewall, Anda akan melihat jaringan Beranda (pribadi) terhubung

Ricardo
sumber
+1, saya juga harus memilih homegroup untuk jaringan saat ini agar aturan dapat berfungsi. Terima kasih @ricardo.
rishimaharaj
1

Cobalah membuka porta pada router Anda ke mesin Anda dan melihat firewall Windows sendiri.

Ingatlah bahwa ketika Anda menginstal ulang Windows, ada kemungkinan Anda memiliki penyewaan DHCP yang berbeda dan memiliki alamat IP yang berbeda sehingga router mungkin tidak meneruskannya dengan benar lagi.

Selain itu, router Anda perlu mendukung "Nat Loopback" jika tidak, Anda hanya akan gagal terhubung, namun saya menganggap itu mendukungnya seperti yang Anda katakan sebelumnya berfungsi. Untuk memeriksa ini, saya sangat menyarankan Anda menggunakan Hide My Ass atau Proxify .

William Hilsum
sumber
> Mungkin saja Anda memiliki alamat IP yang berbeda sehingga router mungkin tidak meneruskannya dengan benar. Sepakat! Saya "portablizing" instalasi WordPress saya sehingga saya dapat dengan mudah meng-host-nya dari mana saja. Saya membuatnya bekerja secara lokal, tetapi diblokir dari dunia. Sudah ada pengecualian di Windows Firewall karena saya katakan izinkan ketika diminta, jadi saya memeriksa router, dan tentu saja, sudah diatur untuk meneruskan port 80 ke IP desktop saya. Tentu saja mengubahnya ke laptop tidak baik. Saya akhirnya menetapkan port-trigger sebagai gantinya, dan sekarang bekerja dari sistem yang terhubung.
Synetech
1

Selain memeriksa firewall dan memeriksa apakah apache hanya mendengarkan alamat localhost, Anda dapat / juga harus memeriksa .htaccessfile Anda . Versi baru yang Anda instal mungkin telah menerapkan kebijakan keamanan yang lebih ketat.

Beberapa tutorial aktif .htaccess

pcapademic
sumber
0

Sepertinya itu adalah masalah dengan firewall Windows 7. Ketika saya mematikan firewall, itu berfungsi dengan baik. Sekarang saya hanya perlu mencari tahu cara mengaktifkan firewall tetapi mengizinkan koneksi port 80.

WilliamKF
sumber