Проблемы с папкой /var/www

Проблемы с папкой /var/www

Я новичок в Ubuntu, установил 12.04. Раньше я использовал wamp server на Windows, и после смены ОС я переместил некоторые файлы из папки www в /var/wwwUbuntu. Но когда я пытаюсь просмотреть эту папку в браузере, он ничего не отображает.

Вероятно, проблема с правами доступа. Каковы правильные права доступа к /var/wwwпапке? Вот мои /varправа доступа к папке:

drwxrwxr-x  4 root root     1024 Feb  4 20:06 www

Я побежал

chmod -R 755 /var/www  
chown -R root /var/www

Сейчас эта /var/wwwпапка пуста, но как настроить Apache для отображения файлов в этой папке в браузере?

решение1

По умолчанию Apache настроен на отображение следующих файлов вместо списка каталогов:

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

Вы можете рекурсивно перечислить все это следующим образом:

find /var/www -name 'index.*'

Если в вашем каталоге есть что-либо из этого, Apache отобразит это, а не что-то вроде этого:

Пример листинга файлов Apache

Чтобы исправить это, удалите или переименуйте файлы index.* во что-нибудь другое. В качестве альтернативы вы можете изменить DirectoryIndexдирективу и перезагрузить apache ( /etc/init.d/apache2 reload).

По умолчанию apache DocumentRoot/var/www. Отображаются только файлы в этой папке. Кроме того, символические ссылки переходят только в том случае, если место назначения принадлежит тому же пользователю. Если у вас есть файлы в /var/www, вам не нужно об этом беспокоиться.

Apache не выводит список файлов, которые www-dataпользователь не может прочитать. Пока есть rи xпоследняя группа (отмеченная ^ниже), все в порядке:

drwxrwxr-x  4 user group     4014 Feb  4 23:16 filename
       ^ ^

Технически, вам нужно только xдля папок. Ваши команды для изменения прав доступа были верны:

chmod -R 755 /var/www  

Если Apache не выводит список файлов, даже если в вашей папке нет индексных файлов, используйте

tail -f /var/log/apache2/error.log

чтобы увидеть, какие ошибки обнаружил Apache.

решение2

Установите Apache с помощью следующей команды

sudo apt-get install apache2

Теперь откройте /etc/apache2/sites-enabled/000-defaultфайл и проверьте, присутствует ли следующая строка

DocumentRoot /var/www

Если присутствует какой-либо другой путь, измените его на/var/www

Теперь вы можете поместить любой html файл для просмотра в вашем браузере. Также, если вы добавите index.htmlи /var/wwwпосетите http://localhost/в браузере, вы сможете увидеть его.

Связанный контент