Призначення дебінів "сайти доступні" та "сайти, що підтримуються"


60

Хто-небудь може сказати мені в двох словах - яка мета цих двох каталогів в Debian?

/etc/apache2/sites-enabled
/etc/apache2/sites-available

Я помічаю, що різняться sites-available/000-defaultі sites-enabled/defaultпоказують, що вони однакові.

Що дає?

Відповіді:


63

доступні сайти містять конфігураційні файли 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

Щоб увімкнути сайт. Після того, як сайт увімкнено, символьне посилання на конфігураційний файл розміщується в каталозі з підтримкою сайтів, що вказує на те, що сайт увімкнено.


12
Якщо ви хочете відключити сайт, ви запустили a2dissite site.mysite.com

2
a2ensiteі a2dissiteзнаходяться там, /usr/sbinде наразі не входить до путівника користувача за замовчуванням, тому завершення вкладки не працюватиме. Під час введення sudo a2та натискання клавіші вкладки вам запропонують і те, a2ensiteі a2dissite.
Стефан Шмідт

22

Більш важливим, ніж механіка системи, є обґрунтування ...

Debian надає два окремі каталоги, так що якщо ви автоматично керуєте своїми конфігураціями Apache, ви можете просто включити всі vhosts sites-availableна всі ваші машини, і тоді окремі vhosts можуть бути включені на сервері, який фактично їх обслуговує. Це також означає, що ви можете миттєво відключити сайт, якщо це викликає проблеми ( a2dissite example.com; /etc/init.d/apache2 reload).


1
Це справжня відповідь на оригінальне запитання.
silpol

5

Щоб додати до зазначених вище, файл у sites-enabled- це символьне посилання на sites-availableфайл:

ls -l /etc/apache2/sites-enabled/

Це не просто той самий контент, це той самий фактичний файл!


5

Важлива інформація:

Ви повинні редагувати файли лише в 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каталогу.


Дуже цікаво! Хтось ще може це підтвердити?
aaaidan

Ось приклад того, хто мав цю проблему: stackoverflow.com/questions/36808705/…
Vini

Щось подібне сталося за наступним посиланням. Дивіться коментар Мелвіна у відповіді про редагування файлів із включеними сайтами. stackoverflow.com/questions/26210115/…
Vini
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.