Xpoint
   [напомнить пароль]

Windows Shares и Apache 2.2: проблемы с открытием директорий

Метки: [без меток]
2007-05-25 22:06:48 [обр] Evgeniy3000[досье]

Всем здравствуйте.
Проблема моя такова: PHP не может открыть или вообще получить доступ к директориям, расшаренным другими пользователями сети.
Функция opendir() возвращает вот такую вот непонятную вещь:

Warning: opendir(//10.0.26.62/Evgeniy3000s/Video/Movie/Bad Boys 2/) [function.opendir]: failed to open dir: No error in

chdir() выдает почти то же самое: Warning: chdir() [function.chdir]: No error (errno 0)
is_dir() возвращает false.
is_readable также не возвращает ничего хорошего.

Содержатся ли в директории пробелы или стоит ли в конце слэш роли не играет.
Проблема врядли в имени директории.

Интересно то, что если запускать скрипт через командную строку, все отлично работает, а через браузер - нет.
Отсюда делаю вывод, что виноват похоже Апач.
Хотя, честно говоря, в устройстве сервера мало что смыслю.
Есть еще один интересный факт: не удается открыть директории любых компов, кроме файлсервера, на котором стоит UNIX. То есть не открывает smb-шары именно пользователей Windows.
Как я понимаю, Апач как-то неправильно просит у Винды доступ или что-то типа этого...

Сам сервер у меня стоит на Винде.
Раньше стоял Денвер с 1-м Апачем и 4-м PHP и все работало.
Поставил Apache 2.2.4 и PHP 5.2.2 — появился такой вот глюк.

Люди знающие, помогите пожалуйста.
Заранее спасибо за любую помощь!

спустя 5 дней [обр] Дмитрий(0/2)[досье]
К сожалению под рукой нет локалки, не могу что-то проверить практически, но вопрос очень интересный. Но вроде как проблема запросто решается заменой / на \ в пути к файлу. А вообще видал в сети жалобы на Apache 2.2.4, но там у людей проблемы были с обращением к NetWare ресурсам. И ещё попытайся добавить в начале пути "file:"
спустя 1 день 5 часов [обр] Evgeniy3000[досье]

К сожалению, никакие манипуляции с адресом не помагают.
Единственное, при использовании "file:", opendir выдает две ошибки:

Warning: opendir() [function.opendir]: remote host file access not supported, file://10.0.26.62/Evgeniy3000s/Video/Movie/Traffic in...

Warning: opendir(file://10.0.26.62/Evgeniy3000s/Video/Movie/Traffic) [function.opendir]: failed to open dir: no suitable wrapper could be found in...

Не совсем пойму что вообще происходит в этом случае, особенно если учесть что таким образом невозможно попасть не только на виндовые шары, но и на юниксовский smb...
Сначала он не может получить доступ, а потом вообще говорит, что враппер ему незнаком..???

спустя 24 минуты [обр] Алексей Севрюков(27/1280)[досье]
Evgeniy3000[досье] Вообщем вот и ответ: remote host file access not supported. Ведь это не локальный файл, а сетевой, и PHP не умеет открывать сетевые файлы по какому то протоколу (наверно TCP/IP, но точно не HTTP).
спустя 5 минут [обр] Алексей Севрюков(27/1280)[досье]
Кстати, вот что говорит гугл - http://bugs.php.net/bug.php?id=11280
спустя 11 минут [обр] Evgeniy3000[досье]

Ну как это PHP не умеет открывать если через командную строку все работает..?
Да и через Апач юниксовские то smb-шары он открывает при использвании такого вида адреса:

//10.0.18.6/fileserver2.satnet/Films/TV/

Причем без разницы, прямые слэши или обратные.
А вот с виндовыми шарами через Апач не хочет...

спустя 45 минут [обр] Алексей Севрюков(27/1280)[досье]
Evgeniy3000[досье] С тем что не умеет я поторопился, каюсь. Баг который я указал тоже достаточно старый и он тут явно не причем. Значит как Вы и сказали проблема в Apache, попробуйте поставить другую версию.
спустя 28 минут [обр] Evgeniy3000[досье]
Ну на первом Апаче то я уже пробовал - все работает.
Но скрипт может устонавливаться на разные сервера...
Хотелось бы, чтобы он был универсальным и работал нормальн с любым Апачем...
Powered by POEM™ Engine Copyright © 2002-2005