Как лучше перенаправлять IP-адрес веб-сервера, когда на нем размещено несколько доменных имен?


8

Я планирую иметь 2 отдельных доменных имени, указывающих на одну и ту же установку Apache с многосайтовым WordPress.

Я могу правильно настроить виртуальные хосты для каждого домена, никаких проблем. Я могу сделать так, чтобы оба домена указывали на один и тот же хост, не беспокойтесь.

В настоящее время я перенаправляю весь трафик с IP-адреса веб-сервера на мой первоначальный домен:

<VirtualHost *:80>
<Directory "/share/Web/WordPress">
        Options FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
</Directory>
        ServerName 1.1.1.100
        Redirect / https://www.example.com/
</VirtualHost>

Как лучше перенаправлять IP-адрес, если два доменных имени указывают на один и тот же IP-адрес?

Я думал о создании общей 404страницы и ее отображении при нажатии на IP-адрес. Но повредит ли это моему SEO на обоих сайтах?

Как хостинг-компании перенаправляют HTTP-трафик на основе IP-адреса? Они указывают на материнскую компанию или что-то еще? Возможно, это не проблема все вместе?

Так что просто для ясности: как лучше перенаправить IP-адрес веб-сервера, когда на нем размещено несколько доменных имен?


1
У хостинговых компаний, предлагающих общие учетные записи, обычно есть несколько сайтов, размещенных на одном IP-адресе с использованием виртуальных хостов, как вы сделали. Они указывают IP-адрес либо на страницу сервера по умолчанию, либо на сайт по умолчанию, либо на страницу с ошибкой. В любом случае, это не влияет на любой другой сайт SEO-мудрый. Поисковые системы сканируют сайты индивидуально на основе домена или IP-адреса и не связываются друг с другом. Так что да, это действительно не проблема - указание IP-адреса для одного из сайтов просто прекрасно и не повлияет на другие сайты.
Дан

IP-адрес связан с доменом для адресации. IP-адрес, как правило, размещается на компьютере. Когда запрос браузера сделан, пакет запроса создан с URL в заголовке. Пакет отправляется на порт 80 сервера для протокола HTTP, к которому привязан веб-сервер для обработки запроса. Веб-сервер должен иметь виртуальный хост, созданный для обработки доменного имени. Это веб-сервер, который обрабатывает запрос по имени домена, а не по IP-адресу. Любой неизвестный запрос, для которого доменное имя не имеет виртуального хоста, будет обработан первым созданным сайтом.
closetnoc

Этот первый созданный сайт иногда намеренно настраивается для обработки только IP-адресов или неизвестных запросов. Это известно как сайт по умолчанию. Это сайт по умолчанию или первый созданный сайт, который может перенаправлять запросы только по IP-адресу. Если вы не контролируете сайт по умолчанию или первый созданный сайт, вы не сможете обрабатывать только запросы IP-адресов. Ваши сайты будут единственными сайтами на сервере. Если нет, то у вас не будет того уровня контроля, который вы ищете. Это помогает? Я правильно понял ваш вопрос? Ура !!
closetnoc

1
Спасибо Дэн, ваши комментарии ответят на мой вопрос. Извините за неопределенность.
Майк

1
@ Майк, я думаю, этот вопрос может быть полезен другим, если он прояснится. Я собираюсь помочь отредактировать его и предложил бы опубликовать ответ, который вы отредактировали в нем, как ответ вместо этого, и примите его, когда сможете, чтобы он был понятен другим, и вы заработали здесь еще одно повторение.
Дан

Ответы:


7

Ответ в комментарии:

У хостинговых компаний, предлагающих общие учетные записи, обычно есть несколько сайтов, размещенных на одном IP-адресе с использованием виртуальных хостов, как вы сделали. Они указывают IP-адрес либо на страницу сервера по умолчанию, либо на сайт по умолчанию, либо на страницу с ошибкой. В любом случае, это не влияет на любой другой сайт SEO-мудрый.

Для ясности лучше всего перенаправить IP на страницу ошибки, 404 или другую целевую страницу. Ничто из этого не окажет негативного влияния на SEO любого размещенного домена.


2

Ответ на ваш вопрос «Как лучше перенаправлять IP-адрес веб-сервера, когда на нем размещено несколько доменных имен?» заключается в следующем: Рекомендуется использовать перенаправление (Apache) или возвращать ошибку 444 (Nginx) для предотвращения атак заголовка узла.

Ваш второй вопрос о SEO не имеет значения и не имеет никакого отношения к названию вашего вопроса, но вы должны задать новый вопрос: «Может ли перенаправление запросов на IP-адрес сервера повлиять на SEO?» если тебя это беспокоит

Вот пример для Apache:

<VirtualHost *:80>
  ServerName IP.AD.DR.ESS
  Redirect permanent / http://www.example.com/
</VirtualHost>

И вот пример для Nginx:

server {
  listen 80;
  server_name IP.AD.DR.ESS;
  return 444;
}

Оба примера прослушивают порт 80 только потому, что перенаправление запросов HTTPS для IP-адреса через порт 443 невозможно.


Привет, Том, в твоем примере мне нужно доменное имя для перенаправления Apache. Это не отвечает на мой вопрос. Кроме того, возврат 444 из nginx и перенаправление в другой домен из Apache - это 2 разных поведения для одного и того же сценария, поэтому это не похоже на лучшую практику.
Майк

Вам не нужно доменное имя для Apache, вы можете буквально перенаправить на example.com вместо одного из ваших доменов, если хотите. С другой стороны, Apache не поддерживает 444 ошибки, это Nginx. Предотвращение атак на заголовки хостов - это лучшая практика, и разные инструменты делают это по-разному. Не уверен, что понимаю твою логику в твоем комментарии, но надеюсь, теперь это понятнее?
Том Броссман,

Привет, Том, спасибо за разъяснения. Теперь я понимаю вашу точку зрения. Я полагаю, что атаки заголовка хоста здесь не актуальны, так как нет записи PTR dns, поэтому доменное имя не разрешается с IP-адреса. ИМХО ответ в моем ответе все еще рассматривается как лучшая практика.
Майк
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.