Чи повинен веб-сайт бути безпосередньо доступним за його IP-адресою?


34

Я виявив, що багато веб-сайтів відображають вміст свого сайту лише тоді, коли ви звертаєтесь до них за допомогою їх FQDN (наприклад, example.com). При спробі отримати доступ за їх IP-адресою вони показують помилку 404 сайту не знайдено.

Чи є вагомі причини, чому власники сайтів не бажають, щоб їх веб-сайти були безпосередньо доступними за IP-адресою, а не через DNS?

Які плюси та мінуси надання прямого доступу до ІР для вашого веб-сайту?

Відповіді:


32

Зауважте, що веб-сайт, до якого звертається через доменне ім’я, може не розміщуватися безпосередньо в корені IP-адреси, тобто example.orgможе зіставляти карту 123.45.67.89/~example. Це звичайно для звичайних веб-хостів, оскільки вони не можуть виділити IP-адресу на веб-сайті - це було б надзвичайно марно.

Наприклад, якщо ви робите DNS пошук з webmasters.stackexchange.com, ви отримаєте IP - адреса 198.252.206.140(на правій стороні на сайті я пов'язаний з). Хоча IP-адреса дійсно переходить на сторінку StackExchange, вона не призводить до розділу для веб-майстрів, що може бути на щось подібне 198.252.206.140/www/webmasters.

Одним із наслідків використання IP-адреси (або чогось подібного 123.45.67.89/~example) є необхідність статичної IP-адреси. Якщо з якоїсь причини IP-адресу довелося змінити, у вас немає можливості перенаправляти користувачів. Якщо з доменним іменем, це просто питання оновлення записів DNS, щоб вказати на нову IP-адресу.

Хоча це не повністю пов'язано, ще один очевидний підхід IP-адрес полягає в тому, що їх набагато складніше запам’ятати, ніж ім’я та закінчення.

За замовчуванням веб-сайт буде доступний через ім'я домену, а також за IP-адресою. Різні відповіді / коментарі на це питання пропонують різні точки зору, і я не хочу копіювати це.

Особисто я б не заблокував доступ за IP-адресою, просто тому, що не можна було б очікувати, що Інтернет працюватиме. Крім того, звичайний користувач ніколи не випадково знайде IP-адресу вашого веб-сайту, і він точно не почне обмінюватися посиланнями на ваш сайт з IP-адресою. Тому будь-які зусилля щодо SEO та безпеки, безумовно, краще витратити в іншому місці.


6
Я не думаю, що ваші два останні абзаци відповідають на питання. Наскільки я розумію це питання, ОП не задається питанням, чи добре пропонувати веб-сайт лише через IP-адресу, а не доменне ім'я, але чи є причини, щоб навмисно заважати користувачам отримувати доступ до веб-сайту через IP-адресу. .
АБО Mapper

2
Одне невелике виправлення: пошук сам по собі покаже вам статус реєстрації та контактну інформацію для доменного імені. IP-адреса визначається за допомогою запису DNS-запису. Who.is - це служба, яка, як правило, показує вам обом під час пошуку доменного імені. Крім того, ви знайдете лише інформацію про кого stackexchange.com, а ні webmasters.stackexchange.com. gwhois.org/webmasters.stackexchange.com+dns
iglvzx

@ORMapper та iglvzx : Дякую вам обом! Я оновив свою відповідь, щоб виправити ваші зауваження, намагаючись якомога менше скопіювати з інших відповідей, які було дуже цікаво прочитати.
ljacqu

1
youtube також - якщо ви надішліть пінг на youtube та отримаєте IP-адресу 173.194.41.161, ви отримаєте домашню сторінку Google.
Вільф

1
Ще однією проблемою може бути SSL, якщо ви застосовуєте його (що ви дійсно повинні).
Лео Лам

9

Початкова версія HTTP не включала жодного механізму, щоб клієнт міг вказати ім'я хоста як частину запиту. Він підключився до сервера та надіслав лише частину шляху URL-адреси. Однією з ранніх модифікацій протоколу HTTP було додавання можливості клієнту надсилати іншу інформацію в "заголовку", включаючи ім'я хоста.

20 років тому підтримка браузера для віртуальних хостів була дуже непомітною. Тоді була б поважна причина для розміщення вмісту лише з IP-адреси. Невеликий відсоток клієнтів не надіслав би заголовок хоста. Ім'я хоста тепер є стандартним заголовком, який надсилає кожен браузер та веб-сканер.

Насправді я вважаю, що запити, які шукають вміст за IP-адресою, швидше за все, не будуть задоволені, якщо мій сервер відповість на мій веб-сайт. Я схильний бачити лише IP-запити, які:

  • Для веб-сайту, який раніше був за цією IP-адресою
  • Спроби доступу зловмисним програмним забезпеченням

Зараз я вважаю за краще помилка 404 лише для запитів IP-адреси, а не для обслуговування свого сайту чи переадресації на мій сайт. Мої сервери також налаштовані на розміщення 404 сторінок нерозпізнаним іменам хостів, як пояснено у відповіді на тему " Як боротися зі зловмисними переадресаціями домену?"


Я час від часу намагаюся зайти на веб-сайти через їх IP-адресу; кожного разу, коли я підозрюю, що з моєю DNS може статися щось рибне. У таких ситуаціях я намагаюся з’ясувати IP-адресу веб-сайту та відкрити веб-сайт через це. Якщо веб-сайт, який я очікував, від звичайного доменного імені завантажується добре лише через його IP, я знаю, що мені потрібно виправити щось про свій DNS, але якщо я отримаю повідомлення про помилку, я б завжди припускав, що щось порушено на сервері веб-сайту і Мені просто дочекатися, поки це буде виправлено.
АБО Mapper

Настільки багато веб-сайтів використовують спільний хостинг в наші дні, що сподіватися на можливість доступу до них без імені хоста не є практичним. Цей веб-сайт StackExchange недоступний лише з IP-адресою. Існує багато веб-сайтів субдоменів StackExchange, якими вони поділяються. StackExchange показує користувацьку сторінку 404, якщо ви спробуйте лише IP-адресу.
Стівен Остерміллер

7

Особливо, якщо у вас є спільний хостинг або сервер власного хостингу кількох доменів, ви не можете отримати доступ до "веб-сайту" через IP. Для власного сервера ви могли б визначити основний домен, який буде досягнуто, якщо ви вводите IP-адресу. Для спільних хостів це неможливо.

Як зазначає @Ijacqu, IP може легко змінитися.

Інша справа - це дубльований вміст, тому в основному це не є хорошою практикою.

Якщо ви хочете, щоб веб-сайт був доступний через його IP-адресу сервера, вам слід напевно додати 301 або 302 вперед до самого домену.

Для одного сервера, яким я керував, я додав невеликий HTML-сайт, просто повторюючи "Ласкаво просимо на 123.456.789.123" як веб-сайт за замовчуванням, оскільки на цій машині розміщено декілька проектів клієнтів, і мені просто потрібне рішення щодо білих міток для сайту за замовчуванням. Я конфігурував, що використовуючи apache vhosts.


3

З точки зору SEO це катастрофа.

Якщо у вас є один веб-сайт, наприклад stackexchange.com, і він також доступний з ip адреси, це призведе до дублювання вмісту.

Це знищить ваш рейтинг та збентежить ваших користувачів, які вони шукатимуть у Google та знайдуть 2 результати за тією ж темою (один доступний за доменним іменем, а один доступний за ip адресою)

Ніколи не робіть доступ до домену за допомогою ip-адреси.

Якщо у вас один домен розміщений на одному сервері, найкращим підходом є 301 redirectпрямий доступ ip-адреси до цього домену.

Якщо у вас є кілька доменів на сервері, вимкніть прямий доступ до ip-адреси.


4
Я займаюся цим з ARPA-NET. Це твердження просто не відповідає дійсності. На початку не було віртуального хостингу, і всі веб-сайти були доступні через ім'я домену І IP-адресу. Це все ще надзвичайно часто. Пошукові системи досить розумні, щоб знати, які доменні імена обслуговуються за якими IP-адресами, і НЕ вважати це дублюючим вмістом, але той самий сайт.
closetnoc

Після веб-сайту було знищено, після оновлення nginx я не виправляв сервер за замовчуванням. Минуло 6 місяців, щоб 301 всі 10.000.000 сканували посилання в прямому доступі до ip :(
krokola

І якщо ви думаєте, що проблем з SEO немає (але я з вами абсолютно не згоден), з хітами є дуже велика проблема. Боти будуть робити подвійні звернення, щоб сканувати той самий вміст. Якщо ваш веб-сайт отримує 2 000 000 звернень бота в день, і ви дозволяєте прямий доступ до ip-адреси, боти зроблять 4.000.000 абсолютно не принесуть вам користі.
krokola

1
Для SEO можна додати а, <link rel="canonical" href="http://example.com" />щоб уникнути дублювання вмісту.
Переповнення запитань

2
Ця відповідь, безумовно, не відповідає дійсності. Багато веб-сайтів доступні за їх IP-адресою, це не викликає головних болів у пошукових системах, це не вб'є ваше "SEO". Дубльований контент - це технічна проблема, яка існує з початку Інтернету, пошукові системи мають різні способи вирішення цього питання. Це не кінець світу. Однак, якщо у вас є перевага щодо індексації, додавання рел = канонічного - це чудовий спосіб орієнтувати пошукові системи до цього.
Джон Мюллер

2

Лише мої 2 копійки, у мене на веб-сервері є кілька веб-сайтів (близько 8), і всі вони мають точно таку ж IP-адресу. За допомогою заголовків хостів FQDN допомагає веб-серверу (в моєму випадку Apache) направляти запит у правильний каталог відповідного веб-сайту. IP-адреса за замовчуванням спрямована на веб-сайт моєї компанії. Я виявив, що приблизно з 2001 року це норма для більшості провайдерів веб-хостингу, особливо враховуючи поточний стан IPv4-адрес. Якийсь досвід роботи я працював на Voyager.net (в Мічигані) близько 8 років, і Voyager був хостинговою компанією та провайдером, який розмістив понад 80 000 доменних і не знаю, скільки веб-сайтів ми розмістили. У бічній примітці, FQDN за визначенням використовується для надання людських читаних адрес на IP-адреси, щоб ми могли їх легше запам'ятати. Знову лише 2 центи.


1

З точки зору безпеки, це розумний хід.

Більшість веб-сайтів з великим трафіком будуть десь використані CDN. Таким чином, будь-яка спроба DOS або DDOS-атаки просто розсіюється через CDN-сервери і не потрапить на сайт користувача.

Однак якщо користувачеві відомо про IP-адресу сайту, він або вона може негайно нанести атаку на IP-адресу та збити сервер в найкоротші терміни. Ось чому більшість CDN запропонують вам параметри приховати IP-адреси вашого сервера. Тож надання 404 тому, хто намагається зайти на сайт, є хорошим кроком. Це може бути відхилено файлом .htaccess або розміщенням сайту в іншому місці, ніж кореневий документ сервера за замовчуванням.


-1

Що всі забувають про спільний хостинг IP - це те, що це як 1000 автомобілів з однаковим номером ліцензії. Якщо одна людина робить щось шкідливе, трафік відображатиметься на цільовому сервері, як із IP-адреси. Він блокується, і всі інші користуються ним. Будь-який сайт, який вам цікавий, повинен мати власний IP-адресу. Будь-яка надіслана вами пошта повинна надходити з вашої IP-адреси, а не з спільного доступу. Я погоджуюся ні на що менше, і я займаюся цим з 1994 року.


Це не дає відповіді на запитання. Питання полягало в тому, чи має бути сайт доступним за IP-адресою, а не чи має бути сайт на спільному хостингу. Навіть якщо у вас є своя IP-адреса, ви можете або не захочете зробити свій сайт доступним, ввівши IP-адресу. Ви також можете розмістити декілька власних сайтів на одній IP-адресі.
Стівен Остерміллер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.