Как добавить сайт-заглушку на сервер
Одна из особенностей работы с виртуальными серверами — в том, что IP-адрес, который выдаётся для размещения сайтов, раньше мог принадлежать кому-то другому. Старый владелец мог размещать на нём сайты, привязывать к нему домены.
Когда адрес назначается новому серверу, он полностью переходит в ваше распоряжение. Но с ним вам может достаться и непредвиденный багаж: например, к этому адресу всё ещё могут быть привязаны доменные имена одного из прошлых владельцев.
Это выливается в следующую картину: веб-сервер получает запросы к доменам, для которых на сервере нет настроек, и показывает на них ваш сайт. В итоге поисковая система считает эти домены копиями вашего сайта — и это приводит к проблемам с ранжированием.
Чтобы защититься от таких ситуаций, достаточно разместить на сервере сайт-заглушку. Его главная задача — отлавливать такие бесхозные домены, чтобы они не влияли на работу ваших сайтов.
Для заглушки достаточно иметь в запасе обычную HTML-страничку, на которой будет какое-то сообщение для пользователей, по ошибке попавших на ваш сервер.
Настройка сайта-заглушки в ISPmanager
Для создания заглушки в ISPmanager достаточно создать отдельный WWW-домен и указать его в качестве приоритетного.
Доступы для входа в панель управления можно найти в Личном кабинете — раздел Товары — Виртуальные серверы — выберите ваш сервер, сверху «Инструкция» .
Откройте панель ISPmanager, перейдите в раздел Домены — WWW-домены и сверху нажмите «Создать» :
В поле «Имя» укажите произвольное доменное имя заглушки. Например, в примере ниже это домен no-such-site.sorry После этого кликните на любом месте в окне настройки — сработает автозаполнение полей. В конце списка настроек создаваемого сайта отметьте пункт «Приоритетный» .
Осталось только загрузить файлы заглушки, чтобы посетители видели не приветственную страницу, которую генерирует ISPmanager, а ваше сообщение.
Если вы знакомы с HTML и CSS, можно просто отредактировать эту самую приветственную страницу. Это можно сделать прямо в панели — раздел Домены — WWW-домены — выберите в списке сайт-заглушку, сверху «Каталог» . Откроется список файлов сайта — по умолчанию там будет один index.html . Дважды кликните на файле, откроется редактор кода: измените вид страницы по своему вкусу.
На этом настройка завершена. Теперь домены, не настроенные на сервере, будут открывать эту заглушку, а не ваши сайты.
Настройка сайта-заглушки в Apache
Чтобы создать заглушку на сервере с LAMP, нужно выполнить следующие шаги:
Создайте папку для заглушки и загрузите туда её файлы. В примере мы будем использовать домен default.site . Для заглушки можно использовать любое имя — оно носит чисто символический характер.
Создать папку можно следующим образом:
Загрузить файлы заглушки можно любым удобным способом — по FTP, sFTP. Или можно вручную создать файл index.html и заполнить его через консольный редактор, если вам знакомы основы HTML и CSS.
После того, как файлы загружены, нужно настроить права: предоставить к файлам доступ веб-серверу, чтобы он мог их обрабатывать. Для этого изменим их владельца на системного пользователя, под которым работает Apache: на Ubuntu и Debian это www-data , на CentOS — apache .
Создайте конфигурационный файл заглушки для веб-сервера — <VirtualHost> . Чтобы наша заглушка работала как надо, этот файл должен быть первым в списке всех конфигурационных файлов сайтов на сервере — этого можно достичь с помощью правильного названия.
На Ubuntu и Debian для этого достаточно отредактировать конфигурационный файл по умолчанию — 000-default.conf :
На CentOS потребуется создать его вручную в директории, где лежат остальные <VirtualHost> . В примере ниже это папка /etc/httpd/sites-enabled Можно создать файл, сразу вызвав консольный редактор — в примере vi :
Замените содержимое файла на следующее:
Вместо 123.123.123.123 укажите IP-адрес вашего сервера, default.site — имя вашей заглушки, /var/www/default.site — путь к файлам заглушки.
На Ubuntu и Debian после настройки нужно активировать новый конфигурационный файл:
На этом настройка заглушки почти завершена. Чтобы все изменения вступили в силу, осталось перезапустить веб-сервер:
Ubuntu и Debian:
CentOS:
Настройка сайта-заглушки в Nginx
Первым делом нужно подготовить директорию под заглушку и загрузить в неё файлы страницы, которая будет отображаться при запросе к несуществующим на сервере доменам.
Добавим на сервер папку под файлы заглушки:
Загрузить файлы заглушки можно любым удобным способом — по FTP, sFTP. Или можно вручную создать файл index.html и заполнить его через консольный редактор, если вам знакомы основы HTML и CSS.
После того, как файлы загружены, нужно настроить права: предоставить к ним доступ веб-серверу, чтобы он мог их обрабатывать. Для этого изменим их владельца на системного пользователя, под которым работает Nginx: на Ubuntu и Debian это www-data , на CentOS — nginx .
Теперь нужно создать конфигурационный файл нашей заглушки.
На Ubuntu и Debian конфигурационные файлы сайтов размещены в отдельной директории /etc/nginx/sites-available . Здесь и разместим наш файл:
На CentOS можно просто создать конфигурационный файл заглушки в директории, где у вас размещены конфиги сайтов. Это может быть папка /etc/nginx/conf.d , доступная по умолчанию, или, как в примере, отдельно созданная директория /etc/nginx/sites-enabled :
Вставьте в файл следующий блок настроек:
Здесь вместо 123.123.123.123 укажите IP-адрес вашего сервера, вместо /var/www/default — путь к файлам вашей заглушки, и сохраните конфигурационный файл.
Пример содержит минимальную конфигурацию. Если для динамического наполнения заглушки вы будете использовать PHP либо примете решение повесить на неё полноценный сайт, настройки потребуется дополнить.
На Ubuntu и Debian созданный конфигурационный файл нужно активировать — создать символьную ссылку в директории /etc/nginx/sites-enabled :