Назад | Перейти на главную страницу

Apache: переход с http.conf на apache2.conf

Мне пришлось заменить свой сервер, старый работает под управлением CentOS, а новый работает под управлением Debian.

В Debian в Apache есть apache2.conf в качестве основного файла конфигурации с рядом других связанных с ним. В CentOS есть только один файл конфигурации для Apache, httpd.conf.

Вопрос: могу ли я использовать старую httpd.conf файл на новом сервере, и если да, то как мне убедиться, что httpd.conf настройки будут преобладать над существующими файлами конфигурации?

Сообщение на Ubuntu Apache: httpd.conf или apache2.conf? указывает, что существующие файлы конфигурации не должны изменяться в случае обновлений.

Я понимаю, что мою индивидуальную конфигурацию можно поместить в /etc/apache2/conf.d однако мне неясно, будут ли ему конфликтовать другие файлы конфигурации в этом месте.

По сути, между ними нет ничего разного. Вы можете переименовать старый httpd.conf, чтобы полностью заменить apache2.conf (рекомендуем сначала создать резервную копию apache2.conf). Новый файл apache2.conf напрямую ссылается на все другие файлы конфигурации, поэтому замена его монолитным (одним) файлом конфигурации полностью перезапишет эту структуру обратно на ту, к которой вы привыкли. Нет опасности, что «новые» настройки переопределят ваши «старые».

Но

Сначала проверьте, одинаковы ли версия Apache и всех модулей. В противном случае ваша конфигурация может быть несовместима с двоичными файлами Debian.

Во-вторых, подумайте, действительно ли вы этого хотите. «Новый» apache.conf разработан для работы с более широкой системой (например, apt / dpkg). Например, установка модулей Apache автоматически установит и для них конфигурацию.

Лучшая практика

Не пытайтесь просто включить свой старый файл. Скорее всего, это не удастся. Лучше всего посмотреть, как Debian структурировал свою конфигурацию, затем проработать ваш старый файл конфигурации и попытаться разрезать его так, чтобы он вписался в новую структуру. Это означает, что вам нужно будет понимать все, что есть в вашем файле конфигурации (в любом случае, неплохо).

В дополнение к ответу Кулинга, если вы хотите добавить свой собственный файл конфигурации в дистрибутив типа Debian, не изменяя существующие настройки, вот как мне удалось это сделать:

  1. Поместите файл конфигурации (имя этого файла должно заканчиваться на .conf) в папку / etc / apache2 / sites-available.
  2. Перейдите в каталог доступных сайтов и введите sudo a2ensite [name-of-your-file].conf.
  3. Перезагрузите конфигурацию, набрав sudo service apache2 reload.

Вышеупомянутый процесс помещает файл символической ссылки в папку / etc / apache2 / sites-enabled. Чтобы изменить настройки сервера по умолчанию, удалите существующий файл с именем 000-default.conf (сначала вы должны сделать копию этого файла).