dJoni 0 Posted February 27, 2007 Report Share Posted February 27, 2007 Добрый день! Возникла непреодолимая проблема -- не могу настроить виртуальный хост для второго Апача. При запуске httpd пишет DocumentRoot does not exist. А сам виртуальный хост (myhost.ru) -- forbidden. Вот блок все мои виртуальные хосты. Собственно второй из них не работает. Первый localhost -- отображает всё подряд(тоесть если направить на сервер какой либо адрес то что /var/www/html находится то и будет показываться). Второй myhost.ru -- самый главный вот он то и отказывается работать NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot /var/www/html ServerName localhost </VirtualHost> <VirtualHost *:80> DocumentRoot /home/myhost/internet ServerName myhost.ru </VirtualHost> Права проверял /home/myhost/internet (каждая папка имеет права 755). Интересно, что если поменять "/home/myhost/internet" на "/home/myhost" то при загрузке named ругатьс уже не будет [root@myhost httpd]# /etc/init.d/httpd restart Stopping httpd: [ OK ] Starting httpd: Warning: DocumentRoot [/home/myhost/internet] does not exist [ OK ] Но и с "/home/myhost" тоже будет forbidden ( Не знаю уже что и делать. Нужно настроить виртуальный хост myhost.ru -- 5 часов ломал голову -- все перепроверил -- не хватает опыта найти решение ( На вас одна надежда P.S. К теме прикреплен виновник топика -- httpd.conf. в нём собственно и проблема. Quote Link to post Share on other sites
Byte 1 Posted February 27, 2007 Report Share Posted February 27, 2007 поменяй на /var/www/myhost и дай права nobody nogroup Quote Link to post Share on other sites
dJoni 0 Posted February 27, 2007 Author Report Share Posted February 27, 2007 Я менял -- работает в var. Но нужно чтобы располагалось именно в home. Это вроде как нормально и вроде должно работать? Quote Link to post Share on other sites
Byte 1 Posted February 27, 2007 Report Share Posted February 27, 2007 кто владелец /home/myhost/internet ? зачем documentroot = / ? ежели хочется "хоститься" в домашней директории пользователя, то можно использовать /home/user/public_html и получать доступ через http://myhost.ru/~user Quote Link to post Share on other sites
cppmm 0 Posted February 27, 2007 Report Share Posted February 27, 2007 Проверьте права на весь путь. Т.е. чтобы и на home был доступ для чтения и на все нижестоящие директории. Quote Link to post Share on other sites
dJoni 0 Posted February 27, 2007 Author Report Share Posted February 27, 2007 владелец /home/myhost/internet myhost:myhost "documentroot = /" От безвыходности -- я думал в нём проблема -- ошибался. я хочу хоститься в директории пользователя потому что привык видеть для каждого пользователя сайт, с public_html у него в директории. http://myhost.ru/~user мне совсем не к чему. зачем мне подобие на сайт, когда я хочу видеть настоящий сайт с полноценным доменом благодаря виртуальным хостам. Quote Link to post Share on other sites
dJoni 0 Posted February 27, 2007 Author Report Share Posted February 27, 2007 Уже проерял. все от home до самого низа имеют права 755 Quote Link to post Share on other sites
Sleeping Daemon 0 Posted February 27, 2007 Report Share Posted February 27, 2007 dJoni писал(а) Tue, 27 February 2007 16:40 Уже проерял. все от home до самого низа имеют права 755 А попробуйте ради эксперемента не 755, а 777. Quote Link to post Share on other sites
dJoni 0 Posted February 27, 2007 Author Report Share Posted February 27, 2007 Попробывал -- не помогло. При загрузке ругается: [root@myhost www]# /etc/init.d/httpd restart Stopping httpd: [ OK ] Starting httpd: Warning: DocumentRoot [/home/myhost/internet] does not exist [ OK ] А сам http://myhost.ru отображает 403 ошибку(forbidden) Quote Link to post Share on other sites
dJoni 0 Posted February 27, 2007 Author Report Share Posted February 27, 2007 Хорошо. Ладно. Я поставил докрут /home/myhost <VirtualHost *:80> DocumentRoot /home/myhost ServerName myhost.ru </VirtualHost> при перезагрузке ошибок не пишет никаких. но 403 опять. Не пойму в чём дело. Права -- 1000% выставлены как надо. где-то подводный камень в httpd.conf p.s. Если кто настраивал размещение файлов виртуальных серверов в директориях пользователей, скиньте пожалуйста конфиг для примера. Я сравню что я не так сделал -- проанализирую. Т.к. в инете для /home/ виртуальных хостов httpd.conf под Linux не вижу. Quote Link to post Share on other sites
Sleeping Daemon 0 Posted February 27, 2007 Report Share Posted February 27, 2007 dJoni писал(а) Tue, 27 February 2007 17:29 Хорошо. Ладно. Я поставил докрут /home/myhost <VirtualHost *:80> DocumentRoot /home/myhost ServerName myhost.ru </VirtualHost> при перезагрузке ошибок не пишет никаких. но 403 опять. Не пойму в чём дело. Права -- 1000% выставлены как надо. где-то подводный камень в httpd.conf p.s. Если кто настраивал размещение файлов виртуальных серверов в директориях пользователей, скиньте пожалуйста конфиг для примера. Я сравню что я не так сделал -- проанализирую. Т.к. в инете для /home/ виртуальных хостов httpd.conf под Linux не вижу. А в логах что пишет? Сделайте для этого виртуального хоста свой лог файл и псмотрите что там при обращении к этому виртульному хосту. Quote Link to post Share on other sites
dJoni 0 Posted February 27, 2007 Author Report Share Posted February 27, 2007 Удивительно но в логи он ничего вобще не пишет. Вот такой вот блок: <VirtualHost *:80> DocumentRoot /home/myhost ServerName myhost.ru ErrorLog /home/myhost/error_log CustomLog /home/myhost/access_log common </VirtualHost> Создал файлы /home/myhost/error_log /home/myhost/access_log поставил 777 права. Перезапускаю сервер -- не ругается совершенно, открываю http://myhost.ru -- 403 ошибка. В логах ничего не написано совершенно.... НО в главных логах ошибок апапача написано следущее (это оставляет 1 запуск с 403 ошибкой) [root@myhost httpd]# cat error_log [Tue Feb 27 06:49:43 2007] [error] [client *******] (13)Permission denied: access to /index.php denied [Tue Feb 27 06:49:43 2007] [error] [client *******] (13)Permission denied: access to /index.html denied [Tue Feb 27 06:49:43 2007] [error] [client *******] (13)Permission denied: access to /index.htm denied [Tue Feb 27 06:49:43 2007] [error] [client *******] (13)Permission denied: access to /index.php denied УДИВИТЕЛЬНО... А вот оставил один лишь index.php в папке пишет уже другое [root@myhost httpd]# cat error_log [Tue Feb 27 06:53:06 2007] [error] [client *******] (13)Permission denied: access to /index.php denied [Tue Feb 27 06:53:06 2007] [error] [client *******] (13)Permission denied: cannot read directory for multi: /home/myhost/ [Tue Feb 27 06:53:06 2007] [error] [client *******] (13)Permission denied: cannot read directory for multi: /home/myhost/ [Tue Feb 27 06:53:06 2007] [error] [client *******] (13)Permission denied: access to /index.php denied Quote Link to post Share on other sites
cppmm 0 Posted February 28, 2007 Report Share Posted February 28, 2007 У меня настроен апач с виртуальными хостами так, что получается http://user.myhost.com/ Файлы пользователя лежат в /home/user/ Проверьте, есть ли у Вас такие записи: <IfModule mod_userdir.c> UserDir public_html </IfModule> <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Options All </Directory> Ну и непосредственно для юзера: <VirtualHost 11.22.33.44> #ip-сервера, на котором крутится апач User user # Имя пользователя Group wwwusers # Этой группе должны принадлежать пути. ServerAdmin user@myhost.com DocumentRoot /home/user/public_html ServerName user.myhost.com ServerAlias user.myhost.com www.user.myhost.com TransferLog /home/user/httpd_logs/access_log ErrorLog /home/user/httpd_logs/error_log </VirtualHost> Ну и ещё раз, на всякий случай проверьте права. У меня аналогичная проблема была из-за того, что на /home/user/public_html права были правильные, а вот на /home/user у апача не было прав на чтение. Quote Link to post Share on other sites
SignFinder 2 Posted February 28, 2007 Report Share Posted February 28, 2007 Цитата: УДИВИТЕЛЬНО... нужно в конфиге апача в <DIRECTORY описать права доступа для /home/user/myhost или в .htaccess. Если бы у вас все лежало в /var/ то без описания прав на все вложенные директории наложились бы права корневой /var/www/html а здесь права по умолчанию не накладываюся. Quote Link to post Share on other sites
dJoni 0 Posted March 4, 2007 Author Report Share Posted March 4, 2007 ИТАК! Проблема решена! как бы банально это не звучало, но вопрос был в SuExeс -- ограничение на доступ там было только для папок /var/www/ пришлось размещать всё там, а в пользовательских папках делать линки на директории в /var/www (((( Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.