Где разместить мой локальный веб-сайт, начиная с версии apache2 2.4.7?

Недавно я установил Ubuntu 14.04, затем я установил lamp-server и разместил мои веб-страницы в /var/www каталог, но когда я открыл localhost в браузере, там ничего не было.Я думаю, это произошло потому, что Zend обновил Apache.

Какова бы ни была причина, я хочу знать, где хранить мои php-файлы, чтобы я мог получить к ним доступ из своего браузера.

Версия apache2, которая была опубликована при выпуске Ubuntu 14.04, - 2.4.7, и, начиная с этой версии, кажется, что по соображениям безопасности новый корневой каталог для сервера является:

/var/www/html

Итак, с этого момента именно здесь вы должны размещать файлы для своего (локального) веб-сайта. У вас не должно возникнуть этой проблемы снова с будущими обновлениями.


В любом случае, если вы хотите изменить этот каталог на другой, вам нужно изменить (как root) следующую строку из /etc/apache2/sites-available/000-default.conf файл (sudo nano /etc/apache2/sites-available/000-default.conf):

DocumentRoot /var/www/html

к

DocumentRoot /path/to/another/directory

После этого, чтобы новые изменения вступили в силу, вам необходимо перезапустить сервер apache, используя следующую команду:

sudo service apache2 restart

Вместо того, чтобы изменять /etc/apache2/sites-available/000-default.conf возвращаясь к старой версии, я предпочитаю сохранять файлы пакетов по умолчанию неизмененными.

Причина этого заключается в том, что, чтобы он не сломался во время следующего обновления снова, что может привести к сбросу 000-default.conf файл.
Кроме того, такие изменения делаются не просто для того, чтобы досадить нам, модификация была сделана по уважительной причине, так как это сообщение об ошибке в Debian объясняет.

Наши веб-серверы [sic] устанавливают корень документа по умолчанию в /var/www, в то время как локальные администраторы сайта обычно используют /var/www/example.com. Это имеет последствия для безопасности, если посетители получают доступ к корню документа по умолчанию, минуя /предполагаемый/ корень документа example.com . Это проблематично, если конфиденциальные данные находятся за пределами предполагаемого корня документа (например, рассмотрим гипотетический конфигурационный файл /var/www/example-com-db.conf).

Лучшим решением было бы переместить файлы сайтов из /var/www к /var/www/html/.

# 1. move all files excluding the `html` directorysudo mv /var/www/[!html]* /var/www/html# 2. Move the hidden files as well which are skipped in previous commandsudo mv /var/www/.[!.]?* /var/www/html/

Кроме того, другим возможным решением является создание другого виртуального хоста и отключение хоста по умолчанию с помощью команды sudo a2dissite 000-default

Хотя это и не ответ на вопрос OP, следующий ответ может помочь некоторым посетителям, которые натыкаются на этот вопрос, пытаясь устранить связанную с этим проблему: apache2 - Why is my Apache not working after upgrading to Ubuntu 14.04? - Ask Ubuntu