Haruskah situs web dapat diakses secara langsung dengan alamat IP-nya?

34

Saya menemukan bahwa banyak situs web menampilkan konten situs mereka hanya ketika Anda mengaksesnya dengan FQDN mereka (contoh, example.com). Ketika mencoba mengakses dengan alamat IP mereka, mereka menunjukkan situs 404 tidak ditemukan kesalahan.

Adakah alasan bagus mengapa pemilik situs tidak ingin situs web mereka dapat diakses secara langsung dengan alamat IP alih-alih melalui DNS?

Apa pro dan kontra dari membuat akses IP langsung tersedia untuk situs web Anda?

Pertanyaan Melimpah
sumber

Jawaban:

32

Perhatikan bahwa situs web yang dijangkau melalui nama domain mungkin tidak di-host secara langsung di akar alamat IP, yaitu example.orgdapat dipetakan ke 123.45.67.89/~example. Ini umum untuk host web biasa karena mereka tidak dapat mengalokasikan alamat IP per situs web - itu akan sangat boros.

Misalnya, jika Anda melakukan pencarian DNS dari webmasters.stackexchange.com, Anda akan mendapatkan alamat IP 198.252.206.140(di sisi kanan di website saya terkait dengan). Sementara alamat IP tidak pergi ke halaman StackExchange, itu tidak mengarah ke bagian webmaster, yang mungkin berada pada sesuatu seperti 198.252.206.140/www/webmasters.

Satu con menggunakan alamat IP (atau sesuatu seperti 123.45.67.89/~example) adalah kebutuhan untuk alamat IP statis. Jika, karena alasan tertentu, alamat IP harus berubah, Anda tidak memiliki cara untuk mengarahkan ulang pengguna. Sedangkan dengan nama domain, itu hanya masalah memperbarui catatan DNS untuk menunjuk ke alamat IP baru.

Meskipun tidak sepenuhnya terkait, satu con alamat IP yang jelas adalah bahwa mereka jauh lebih sulit untuk diingat daripada nama dan akhiran.

Secara default, situs web akan tersedia melalui nama domain, serta alamat IP. Jawaban / komentar yang berbeda untuk pertanyaan ini menawarkan perspektif yang berbeda, dan saya tidak ingin mencontohnya.

Secara pribadi, saya tidak akan memblokir akses berdasarkan alamat IP, hanya karena itu bukan bagaimana orang mengharapkan internet bekerja. Selain itu, pengguna biasa tidak akan pernah menemukan alamat IP situs web Anda secara acak, dan dia pasti tidak akan mulai berbagi tautan ke situs Anda dengan alamat IP. Jadi segala upaya untuk SEO dan keamanan pasti lebih baik dihabiskan di tempat lain.

ljacqu
sumber
6
Saya tidak berpikir dua paragraf terakhir Anda menjawab pertanyaan. Dalam memahami pertanyaan saya, OP tidak menanyakan apakah boleh menawarkan situs web hanya melalui alamat IP daripada nama domain, tetapi apakah ada alasan untuk secara sengaja mencegah pengguna mengakses situs web melalui alamat IP .
ATAU Mapper
2
Satu koreksi kecil: di dalam dan dari dirinya sendiri, pencarian whois hanya akan menunjukkan status pendaftaran dan informasi kontak untuk nama domain. Alamat IP ditentukan oleh pencarian catatan DNS. Who.is adalah layanan yang kebetulan menunjukkan Anda berdua ketika mencari nama domain. Juga, Anda hanya akan menemukan info whois untuk stackexchange.com, dan tidak webmasters.stackexchange.com. gwhois.org/webmasters.stackexchange.com+dns
iglvzx
@ORMapper dan iglvzx : Terima kasih banyak! Saya telah memperbarui jawaban saya untuk memperbaiki komentar Anda, mencoba menyalin sesedikit mungkin dari jawaban lain, yang sangat menarik untuk dibaca.
ljacqu
1
YouTube juga - jika Anda melakukan ping youtube, dan mendapatkan alamat IP 173.194.41.161, Anda akhirnya mendapatkan beranda Google.
Wilf
1
Masalah lain dapat berupa SSL jika Anda menegakkannya (yang seharusnya Anda lakukan).
Léo Lam
9

Versi asli HTTP tidak menyertakan mekanisme apa pun bagi klien untuk menentukan nama host sebagai bagian dari permintaan. Itu terhubung ke server dan hanya mengirim bagian jalur URL. Salah satu modifikasi awal protokol HTTP adalah menambahkan kemampuan bagi klien untuk mengirim informasi "header" lainnya, termasuk nama host.

20 tahun yang lalu dukungan browser untuk host virtual sangat buruk. Saat itu, akan ada alasan yang sah untuk menyajikan konten hanya dari alamat IP juga. Sebagian kecil klien tidak akan mengirim header host. Nama host sekarang adalah header standar yang dikirim oleh setiap browser dan crawler web.

Bahkan, saya menemukan bahwa permintaan mencari konten pada alamat IP tidak akan puas jika server saya merespons dengan situs web saya. Saya cenderung melihat permintaan hanya IP yang:

  • Untuk situs web yang dulu menggunakan alamat IP itu
  • Upaya akses oleh malware

Saya sekarang lebih suka untuk melayani kesalahan 404 hanya untuk permintaan alamat IP daripada melayani situs saya atau mengarahkan ke situs saya. Server saya juga dikonfigurasikan untuk melayani 404 halaman ke nama host yang tidak dikenal seperti yang dijelaskan dalam jawaban untuk Bagaimana menangani pengalihan domain berbahaya?

Stephen Ostermiller
sumber
Saya kadang-kadang mencoba mengakses situs web melalui alamat IP mereka; setiap kali saya curiga ada sesuatu yang mencurigakan yang mungkin terjadi dengan DNS saya. Dalam situasi itu, saya mencoba mencari tahu alamat IP untuk situs web dan membuka situs web melalui itu. Jika situs web yang saya harapkan dari nama domain normal dimuat dengan baik melalui IP-nya saja, saya tahu saya harus memperbaiki sesuatu tentang DNS saya, tetapi jika saya mendapatkan pesan kesalahan, saya akan selalu menganggap ada sesuatu yang rusak pada server situs web dan Saya hanya harus menunggu sampai diperbaiki.
ATAU Mapper
Begitu banyak situs web menggunakan shared hosting hari ini yang berharap dapat mengaksesnya tanpa nama host tidak praktis. Situs web StackExchange ini tidak tersedia hanya dengan alamat IP. Ada banyak situs web subdomain StackExchange yang membagikannya. StackExchange menampilkan halaman 404 khusus jika Anda mencobanya hanya dengan alamat IP.
Stephen Ostermiller
7

Terutama jika Anda memiliki hosting bersama atau server dari beberapa domain hosting Anda sendiri, Anda tidak dapat mengakses "situs web" melalui IP. Untuk server Anda sendiri, Anda mungkin dapat mendefinisikan domain utama yang tercapai jika Anda memasukkan IP. Untuk host bersama itu tidak mungkin.

Seperti yang disebutkan oleh @Ijacqu, IP dapat dengan mudah berubah.

Hal lain adalah duplikat konten, jadi pada dasarnya itu bukan praktik yang baik untuk melakukannya.

Jika Anda ingin memiliki situs web yang dapat dijangkau melalui server IP Anda, Anda harus menambahkan maju 301 atau 302 ke domain itu sendiri.

Untuk satu server yang saya kelola, saya menambahkan situs HTML kecil, hanya menggema "Selamat datang di 123.456.789.123" sebagai situs web default, karena beberapa proyek pelanggan di-host pada mesin itu, dan saya hanya memerlukan solusi label putih untuk situs default. Saya mengkonfigurasi itu menggunakan vhost apache.

Christoph Daum
sumber
3

Dari perspektif SEO itu adalah bencana.

Jika Anda memiliki satu situs web misalnya stackexchange.com dan juga dapat diakses dari alamat ip, ini akan menyebabkan duplikat konten.

Ini akan menghancurkan peringkat Anda, dan akan membingungkan pengguna Anda, yang mana mereka akan mencari Google dan menemukan 2 hasil untuk topik yang sama (satu dapat diakses dengan nama domain, dan satu dapat diakses oleh alamat ip)

Jangan pernah membuat domain dapat diakses dari alamat ip.

Jika Anda memiliki satu domain yang di-host pada satu server, pendekatan terbaik adalah 301 redirectmengarahkan akses alamat ip ke domain itu.

Jika Anda memiliki lebih dari satu domain di server, nonaktifkan akses alamat ip langsung.

krokola
sumber
4
Saya sudah di ini sejak ARPA-NET. Pernyataan ini sama sekali tidak benar. Pada awalnya, tidak ada hosting virtual dan semua situs web dapat diakses melalui nama domain DAN alamat IP. Ini masih sangat umum hari ini. Mesin pencari cukup pintar untuk mengetahui nama domain apa yang dilayani oleh alamat IP apa dan JANGAN menganggapnya sebagai konten duplikat tetapi situs yang sama.
closetnoc
Oleh situs web dihancurkan, setelah pembaruan nginx bahwa saya tidak memperbaiki server default. Butuh 6 bulan untuk 301 semua 10.000.000 tautan yang dirayapi dalam akses alamat ip langsung :(
krokola
Dan jika Anda berpikir bahwa tidak ada masalah SEO (tapi saya benar-benar tidak setuju dengan Anda), ada masalah yang sangat besar dengan hit. Bot akan membuat klik ganda untuk merayapi konten yang sama. Jika situs web Anda menerima 2.000.000 bot hit per hari, dan Anda mengizinkan akses alamat ip langsung, bot akan menghasilkan 4.000.000 sama sekali tidak akan bermanfaat bagi Anda.
krokola
1
Untuk SEO, dimungkinkan untuk menambahkan <link rel="canonical" href="http://example.com" />untuk menghindari duplikat konten.
Pertanyaan Overflow
2
Jawaban ini jelas tidak benar. Banyak situs web dapat diakses pada alamat IP mereka, itu tidak menyebabkan sakit kepala mesin pencari, itu tidak akan membunuh "SEO Anda." Konten duplikat adalah masalah teknis yang telah ada sejak awal web, mesin pencari memiliki berbagai cara untuk menghadapinya. Itu bukan akhir dunia. Yang mengatakan, jika Anda memiliki preferensi mengenai pengindeksan, menambahkan rel = kanonik adalah cara yang bagus untuk memandu mesin pencari ke arah itu.
John Mueller
2

Hanya 2 sen saya, saya punya beberapa situs web di server web saya (sekitar 8) dan semuanya memiliki alamat IP yang sama persis. Dengan menggunakan Host Headers, FQDN membantu server web (dalam kasus saya Apache) untuk mengarahkan permintaan ke direktori yang benar untuk situs web yang dimaksud. Alamat IP diarahkan ke Situs web perusahaan saya secara default. Saya telah menemukan sejak sekitar 2001 ini adalah norma bagi sebagian besar penyedia web hosting, terutama mengingat keadaan alamat IPv4 saat ini. Hanya beberapa latar belakang, saya bekerja untuk Voyager.net (di Michigan) selama sekitar 8 tahun dan Voyager adalah perusahaan hosting dan ISP yang menampung lebih dari 80.000 domain dan saya tidak tahu berapa banyak situs web yang kami host. Sebagai catatan, FQDN secara definisi digunakan untuk memberikan alamat yang dapat dibaca manusia ke alamat IP sehingga kita dapat mengingatnya dengan lebih mudah. Sekali lagi hanya 2 sen saya.

Tad
sumber
1

Dari perspektif keamanan, ini adalah langkah cerdas.

Sebagian besar situs web dengan lalu lintas padat akan menggunakan CDN di suatu tempat. Jadi setiap upaya serangan DOS atau DDOS akan menghilang begitu saja melalui server CDN dan tidak akan mencapai situs pengguna.

Namun, jika pengguna mengetahui alamat IP situs tersebut, ia dapat secara langsung menembakkan serangan ke IP dan menjatuhkan server dalam waktu singkat. Itu sebabnya sebagian besar CDN akan menawarkan Anda opsi untuk menyembunyikan alamat IP server Anda. Jadi memberikan 404 kepada seseorang yang mencoba mengakses situs adalah langkah yang bagus. Ini dapat layu dilakukan oleh file .htaccess atau dengan hosting situs di tempat selain dari root dokumen server default.

Rana Prathap
sumber
-1

Apa yang semua orang lupa tentang IP hosting bersama adalah seperti 1000 mobil dengan nomor lisensi yang sama. Jika satu orang melakukan sesuatu yang berbahaya lalu lintas akan ditampilkan di server target sebagai dari IP. Itu akan diblokir dan begitu juga orang lain menggunakannya. Setiap situs yang Anda pedulikan harus memiliki IP sendiri. Setiap surat yang Anda kirim harus berasal dari IP Anda, bukan yang dibagikan. Saya puas dengan hal yang kurang dan saya sudah di ini sejak tahun 1994.

Larry
sumber
Ini tidak menjawab pertanyaan. Pertanyaannya adalah apakah situs harus dapat diakses oleh alamat IP, bukan apakah situs harus menggunakan shared hosting. Bahkan jika Anda memiliki alamat IP Anda sendiri, Anda mungkin atau mungkin tidak ingin membuat situs Anda tersedia dengan mengetikkan alamat IP. Anda juga mungkin ingin meng-host beberapa situs Anda sendiri di satu alamat IP itu.
Stephen Ostermiller