Системы Debian (и, возможно, другие) имеют следующую структуру в / etc / apache2 /
mods-available/ mods-enables/ sites-available/ sites-enabled/
В настройках по умолчанию есть тонна файлов как в доступных модах, так и в доступных для сайтов, а также есть символические ссылки на эти файлы в * -enabled /.
Я никогда не беспокоился о символических ссылках. Я всегда просто перемещал файлы.
Я утверждаю, что это позволяет вам легко увидеть, какие моды / сайты были включены, а какие нет. Символьные ссылки позволяют увидеть только то, какие из них были включены (в любом случае, легко, без использования diff). Однако мой коллега считает иначе.
Итак, что такое правильный путь и почему?
«Правильный путь» - использовать a2enmod и a2dismod для включения и отключения модулей, a2ensite и a2dissite для включения и отключения сайтов.
Команды a2 * mod предоставляют вам список [отключенных | разрешенных] модулей, установленных в вашей системе, которые вы затем можете [включить | отключить]. То же самое с командами сайта a2 *, однако они работают со списком файлов конфигурации сайта (как доступных по умолчанию, так и созданных вами) в каталоге sites-avaliable.
Вы также можете вручную создать символическую ссылку с * -avaliable на * -enabled, но эти команды предоставляются и в любом случае в значительной степени это делают.
Пример вывода a2enmod:
Your choices are: actions alias asis auth_basic auth_digest authn_alias
authn_anon authn_dbd authn_dbm authn_default authn_file authnz_ldap authz_dbm
authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache
cern_meta cgi cgid charset_lite dav dav_fs dav_lock dbd deflate dir disk_cache dump_io
env expires ext_filter file_cache filter headers ident imagemap include info ldap
log_forensic mem_cache mime mime_magic negotiation pagespeed php5 proxy proxy_ajp
proxy_balancer proxy_connect proxy_ftp proxy_http proxy_scgi reqtimeout rewrite setenvif
speling ssl status substitute suexec unique_id userdir usertrack version vhost_alias
Which module(s) do you want to enable (wildcards ok)?
Я всегда фанат создания домашних каталогов для учетных записей виртуального хостинга. У этого есть несколько преимуществ, таких как простой chroot с ftp и ssh, и, конечно, проще управлять разрешениями.
Я не думаю, что есть "правильный" путь, есть разные способы, и у каждого свои методы.
Одно можно сказать наверняка. Мне не нравится, как серверы apache debian (или Ubuntu) настраивают виртуальные хосты. Мне нравится установка Apache в CentOS.
Вы можете увидеть мою настройку в моем скрипте создания виртуальных хостов (https://github.com/metalmini/vhostusers/blob/master/vhostusers.sh)
Есть ли смысл иметь список отключенных модулей? Несомненно, важным фактором является то, поддерживает ли сервер что-либо, и вы можете определить это, посмотрев, есть ли это в списке разрешенных или нет.
Всегда включены символические ссылки для использования.
Таким образом, у вас всегда есть полный список и список работ, который работает сейчас. Также символические ссылки могут иметь такие имена, как 001-site, Client-id-12-site и т. Д., Так что некоторая структура.
Также вам не нужно делать изменения в тоннах места. Измените только один файл.
Также это выглядит красиво.
И я не вижу минусов в этой структуре, так почему бы и нет? ;)