Может ли кто-нибудь сказать мне - в двух словах - каково назначение этих двух каталогов в Debian?
/etc/apache2/sites-enabled
/etc/apache2/sites-available
Я замечаю это различие sites-available/000-default
и sites-enabled/default
показывает, что они идентичны.
Что дает?
sites-available содержит файлы конфигурации apache для каждого из ваших сайтов. Например:
<VirtualHost *:80>
ServerName site.mysite.com
ServerAdmin my@email.com
DirectoryIndex index.php
DocumentRoot /home/user/public_html/site.mysite.com/public
LogLevel warn
ErrorLog /home/user/public_html/site.mysite.com/logs/error.log
CustomLog /home/user/public_html/site.mysite.com/logs/access.log combined
</VirtualHost>
Если вы хотите добавить новый сайт (например, site.mysite.com), вы добавляете его сюда и используете:
a2ensite site.mysite.com
Для включения сайта. После того, как сайт включен, символическая ссылка на файл конфигурации помещается в каталог с поддержкой сайтов, что указывает на то, что сайт включен.
Более важным, чем механика системы, является обоснование ...
Debian предоставляет два отдельных каталога, поэтому, если вы автоматически управляете своими конфигурациями Apache, вы можете просто поместить все vhosts в sites-available
на всех ваших машинах, а затем можно включить отдельные виртуальные хосты на сервере, который будет их обслуживать. Это также означает, что вы можете почти мгновенно отключить сайт, если он вызывает проблемы (a2dissite example.com; /etc/init.d/apache2 reload
).
Вы должны редактировать файлы только в sites-available
каталог.
Никогда редактировать файлы внутри sites-enabled
каталог, иначе у вас могут возникнуть проблемы, если вашему редактору не хватит памяти или по какой-либо причине он получит SIGHUP или SIGTERM.
Например: если вы используете nano
редактировать файл sites-enabled/default
и ему не хватает памяти или по какой-либо причине он получает SIGHUP или SIGTERM, тогда nano
создаст аварийный файл с именем default.save
, внутри sites-enabled
каталог. Итак, внутри будет дополнительный файл sites-enabled
каталог. Это предотвратит запуск Apache или NGINX. Если ваш сайт работал, его больше не будет. Вам будет нелегко, пока вы не обнаружите в журналах что-то, связанное с default.save
файл, а затем удалите его.
В приведенном выше примере, если вы редактировали файл внутри sites-available
каталог, ничего плохого не случилось бы. Файл sites-available/default.save
был бы создан, но не причинял бы никакого вреда внутри sites-available
каталог.
Чтобы добавить к вышесказанному, файл в sites-enabled
символическая ссылка на sites-available
файл:
ls -l /etc/apache2/sites-enabled/
Это не одно и то же содержание, это один и тот же файл!