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

где должен быть корневой каталог сайта?

Куда мне поместить корневой каталог моего сайта «my_site»? Любая лучшая практика?

/var/www/my_site/
/var/local/sites/my_site/
/usr/share/wwww/my_site/
/usr/local/my_site/
/opt/my_site/
/srv/my_site/

Нет лучшего места для этого. Это вопрос предпочтений.

Помещая это под /var/www довольно часто. я использую /var/www/sites/<vhost>.

Подкладывать его под другие не принято.

Я лично никогда бы не положил это под /usr/share.

Просто убедитесь, что вы постоянно кладете его в одно и то же место. Если вы в конечном итоге управляете десятками или сотнями веб-серверов, а DocumentRoot варьируется от сервера к серверу, у вас будут плохие времена.

Практика варьируется, и я не думаю, что есть какое-то общее мнение или что это достаточно важно для того, чтобы действительно быть «лучшим».

Распределения, как правило, по умолчанию /var/www, что имеет смысл, если вы интерпретируете /var как «записываемые системные данные». Многие люди просто следуют этому параметру по умолчанию и помещают туда свои собственные данные.

Другие люди (и это часто было по умолчанию в дистрибутиве> 15 лет назад) используют /home/www или что-то подобное, прямо рядом с домашними каталогами пользователей. Я думаю в целом это считается не наилучшая практика, поскольку политики для пользователей и данных серверных приложений обычно очень разные, и может быть пользователь, связанный с услугой, который не должен иметь доступ на запись к файлам, и в целом это выглядит как беспорядочное использование пространства имен.

/usr/share тоже, как правило, не очень хорошая идея, потому что в современных дистрибутивах /usr (за исключением /usr/local) - это территория, которая должна находиться под контролем менеджера пакетов дистрибутива, и не записывается иначе.

С положительной стороны: Стандарт иерархии файловой системы указывает /srv как в основном специально для этой цели:

/ srv содержит данные для конкретного сайта, которые обслуживаются этой системой.

и

[...] / srv всегда должен существовать в FHS-совместимых системах и использоваться в качестве местоположения по умолчанию для таких данных.

Итак, если вы действительно хотите следовать стандарту, является один. Лично мне это нравится, и я обнаружил, что это значительно упрощает политику резервного копирования. (Большинство /var является преходящий переменные данные, которые не нужно хранить долго, если вообще, по крайней мере, пока вы следуете практике размещения фактических "деловых" данных в /srv.)

Не существует жестко заданных предпочтений для помещения его в какой-либо конкретный каталог.

я предпочитаю /home/acountname/public_html чтобы сохранить все данные, связанные с сайтом, если я размещаю несколько веб-сайтов на одном сервере, поскольку я указываю имя учетной записи как business or user or client для которого я размещаю веб-сайт.

Самые популярные корневые каталоги документов: /var/www/html/ и /var/www/sites/если вы размещаете только один сайт.

Вы можете поставить куда угодно по вашему желанию. Но, конечно, никто не предложит положить его под /usr/share/.

Нет "правильного" места, но попытаться уважать привычки дистрибутивов - неплохая идея. Согласно FHS и другим источникам, данные, которыми владеют и управляют программы, принадлежат 6 различным папкам:

  • / usr / share: неизменяемые данные считаются независимыми от архитектуры (конечно, для системных администраторов не существует немодифицируемых данных).
  • / etc: неизменяемые данные конфигурации (опять же, последнее слово всегда остается за системными администраторами).
  • / run: переменные данные, используемые процессами в течение всего их жизненного цикла (но непостоянные между перезагрузками).
  • / tmp: переменные данные, используемые в течение коротких периодов времени (непостоянные между перезагрузками).
  • / var: другие вспомогательные / дополнительные данные (постоянные данные, данные, которые могут быть изменены пользователем, и вообще другие данные, не подходящие для других папок). Общие подпапки:
    • www: веб-сайты
    • почта: почтовые ящики
    • tmp: то же, что и / tmp, но для временных данных, которые должны сохраняться между перезагрузками.
    • spool: данные, ожидающие доставки или использования другими программами / хостами.
    • lock: заблокированные файлы.
  • / srv: То же, что и / var, но для служб, а не для других программ.

Согласно этим описаниям, веб-сайты должны находиться в / srv / www, но система debian не использует его. Вместо этого они использовали / var (/ var / www, / var / mail и так далее).