URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 3707
[ Назад ]

Исходное сообщение
"апач 1.3.29,  file does not exist"

Отправлено ffoton , 09-Ноя-05 18:45 
люди добрые, подскажите плз
после правки конфига, апач нормально стартует, но при попытке зайти на страницу, в браузер вылезает 404-я ошибка, а в лог лезет сообщение "file does not exist: <путь>".
говорит, что корневого каталога сайта нет, хотя он точно есть и права на нем стоят нормальные. в чем может быть причина? :(
пробовал и с виртульными серверами, но там такой же затык :(
при обращении к любому из них получается эта же ошибка
уж не знаю, куда копать :(((


Содержание

Сообщения в этом обсуждении
"апач 1.3.29,  file does not exist"
Отправлено Scad17 , 09-Ноя-05 19:20 
напиши тут DocumentRoot сайта и полное сообщение апача в логе


"апач 1.3.29,  file does not exist"
Отправлено ffoton , 10-Ноя-05 09:41 
>напиши тут DocumentRoot сайта и полное сообщение апача в логе

ServerRoot /usr/etc/httpd
DocumentRoot /mnt/www/html

сразу после старта сервера лог выглядит так:
error_log:
[notice] Initializing etag from /usr/etc/httpd/logs/etag-state
[notice] Initializing etag from /usr/etc/httpd/logs/etag-state
[notice] chrooted in /usr/etc/httpd
[notice] changed to uid 67, gid 67
[notice] Apache/1.3.29 (Unix) mod_ssl/2.8.16 OpenSSL/0.9.7g configured --resuming normal operations
[notice] Accept mutex: sysvsem (Default: sysvsem)

после обращениядобавляются строки:
[error] [client 192.168.1.2] File does not exist: /mnt/www/html
[error] [client 192.168.1.2] File does not exist: /mnt/www/html/favicon.ico


"апач 1.3.29,  file does not exist"
Отправлено Scad17 , 10-Ноя-05 09:48 
Он(апач) у тебя чрутится, т.е. выполняет chroot (change root - смена корневого "/" каталога). Соответственно, если я правильно понимаю, путь
/mnt/www/html должен быть относительно той директории в коротую этот chroot  выполняется т.е. /usr/etc/httpd... т.е. должен существовать /usr/etc/httpd/mnt/www/html он существует?

"апач 1.3.29,  file does not exist"
Отправлено ffoton , 10-Ноя-05 11:47 
> должен существовать /usr/etc/httpd/mnt/www/html он существует?

да, /usr/etc/httpd/www - это линк на /mnt/www
пробовал DocumentRoot www/html - такая же ерунда
щас попробую еще раз



"апач 1.3.29,  file does not exist"
Отправлено Scad17 , 10-Ноя-05 11:59 
>да, /usr/etc/httpd/www - это линк на /mnt/www пробовал DocumentRoot www/html - такая же ерунда
>щас попробую еще раз

Попробуй без линка, прям создать директорию и положить туда index.htm или кто там у тебя DirectoryIndex.


"апач 1.3.29,  file does not exist"
Отправлено uldus , 10-Ноя-05 17:25 
>> должен существовать /usr/etc/httpd/mnt/www/html он существует?
>
>да, /usr/etc/httpd/www - это линк на /mnt/www

Символический линк во вне chroot не выведет, он относительно нового корня chroot будет интерпретироваться, монтируй прямо в /usr/etc/httpd.



"апач 1.3.29,  file does not exist"
Отправлено ffoton , 10-Ноя-05 22:50 
> Символический линк во вне chroot не выведет, он относительно нового корня
> chroot будет интерпретироваться, монтируй прямо в /usr/etc/httpd.

ух ты, блин... я об этом не подумал :(
завтра попробую
спасибо за помощь

слушай, uldus, а chroot - это фича сервера или подключаемая возможность?
просто до этого я настраивал апач на другой машине и все работало, хотя DocumentRoot указывал на каталог, расположенный за пределами ServerRoot
или это от версии зависит?


"апач 1.3.29,  file does not exist"
Отправлено ffoton , 11-Ноя-05 09:03 
кстати, /usr/etc/httpd/logs - это тоже линк на /var/log/httpd
но логи нормально пишутся

"апач 1.3.29,  file does not exist"
Отправлено uldus , 11-Ноя-05 12:31 
>кстати, /usr/etc/httpd/logs - это тоже линк на /var/log/httpd
>но логи нормально пишутся

Скорее наоборот /var/log/httpd - линк, или апач не в chroot, или логи не от этого апача. Поймите, симлинк - относительная корня вещь, смещая корень ФС через chroot, все симлинки внутри этого chroot начинают работать относительно него и физически не могут указывать на файл вне chroot.


"апач 1.3.29,  file does not exist"
Отправлено ffoton , 11-Ноя-05 13:33 
> Поймите, симлинк - относительная корня вещь, смещая
> корень ФС через chroot, все симлинки внутри этого chroot начинают
> работать относительно него и физически не могут указывать на файл
> вне chroot.

я понимаю, что делает chroot. но логи именно от этого апача и они нормально пишутся
попробовал убрать линк на /mnt/www и подмонтировал его в каталог, куда chroot'ится апач. бесполезно.


"апач 1.3.29,  file does not exist"
Отправлено Scad17 , 11-Ноя-05 14:53 
Разреши апачу показывать в качестве первой страницы содержимое директории DocumentRoot в отсутствии файла DirectoryIndex, помоему так Options Indexes в Directory надо добавить... Может содержимое на размышления наведет...

"апач 1.3.29,  file does not exist"
Отправлено ffoton , 11-Ноя-05 14:54 
заколебался я
вернул все в зад :)
поставил конфиг дефолтный, ServerRoot в /var/www, DocumentRoot в /var/www/htdocs
все работает, в причине проблемы так и не разобрался :(
наверно, в настройках че-то не то снес случайно

спасибо за помощь! :)



"апач 1.3.29,  file does not exist"
Отправлено uldus , 09-Ноя-05 21:24 
>говорит, что корневого каталога сайта нет, хотя он точно есть и права

В одной из директорий ниже корневого каталога сайте права доступа не позволяют апачу читать или заходить в директорию. Проследи правильность прав на каталоги от самого корня.


"апач 1.3.29,  file does not exist"
Отправлено ffoton , 10-Ноя-05 09:48 
>В одной из директорий ниже корневого каталога сайте права доступа не > позволяют апачу читать или заходить в директорию. Проследи
> правильность прав на каталоги от самого корня.

да я права первым делом проверил

в httpd.conf
user www
group www

# ls -ld /mnt
drwxr-xr-x   root   wheel   ...  /mnt/
# ls -ld /mnt/www
drwxr-xr-x   root   wheel   ...  /mnt/www/
# ls -ld /mnt/www/html
drwxr-xr-x   www   www   ...  /mnt/www/html/
# ls -l /mnt/www/html
-rw-r--r--   www   www   ...  index.html