часть модулей не подлкючается: could not load module

benadin

Guest
часть модулей не подлкючается: could not load module

Win XP; Apache 1.3.33; PHP 4.4.0

Модули (*.dll) лежат в каталоге модулей, прописанном в extension_dir = "./ext/"

"добавляем" модуль в php.ini - раскоментируя строку extension=php_mbstring.dll - работает

проделываем то же самое с, например, extension=php_domxml.dll - ошибка:
Код:
PHP Startup: Unable to load dynamic library "./ext/php_domxml.dll" - The specified module could not be found
Однако модуль в каталоге есть!!!

Проверял file monitor-ом - обращается по полному пути правильно....

Причем такая ситуация не только с этим модулем, а и с частью других модулей. Т.е. большая часть модулей подключается нормально, и phpinfo() об этом тоже говорит, а вот часть - выпадают по описанной ошибке :(

Кто-нить знает как с таким бороться?
 

tony2001

TeaM PHPClub
extension_dir = "./ext/"

точка - это текущая директория.
./ext/ - это "директория ext/, являющаяся поддиректорией текущей".
т.е. бред.
 

benadin

Guest
Как показывает file mon - не бред :)

запись вида extension_dir = "E:\usr\local\php4\ext\"
приводит абсолютно к той же ситуации
 

tony2001

TeaM PHPClub
слэши в другую сторону.

-~{}~ 20.07.05 23:01:

и все файлы из директории dlls - либо скопировать в c:\windows, либо добавить dlls в PATH.
 

benadin

Guest
Автор оригинала: tony2001
слэши в другую сторону.

-~{}~ 20.07.05 23:01:

и все файлы из директории dlls - либо скопировать в c:\windows, либо добавить dlls в PATH.
Со слэшами все нормально, и даже ./ работает - здесь PHP видимо интерпретирует точку как текущая дир-рия, из к-ой запускается PHP.

А вот dlls - действительно помогает - слил в system32.

В частности, для php_domxml.dll помогает: iconv.dll

Also, there is one additional DLL that must be made available to your system's PATH in order for this extension to work. In PHP 4 this is in the dlls/ directory. It's name: For PHP <= 4.2.0, it's libxml2.dll. For PHP >= 4.3.0, it's iconv.dll. And as of PHP 5.0.0, iconv is compiled into your Windows PHP binaries by default so no extra DLL is needed.
(C) PHP manual
 

tony2001

TeaM PHPClub
вот и хорошо.
только док-цию надо было читать ДО, а не ПОСЛЕ.
но вообще - молодец, что сам нашел.
 

benadin

Guest
Автор оригинала: tony2001
вот и хорошо.
только док-цию надо было читать ДО, а не ПОСЛЕ.
но вообще - молодец, что сам нашел.
Дык, читал сначала, конечно :). Но как показала практика - читал плохо :(. Как ни стыдно признавать.
 

slach

Новичок
скопируйте из папки dlls все файлы в windows\system32

расширения это зачастую всего лишь врапперы к сторонним библиотекам
 
Сверху