Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы при внешнем подключении модуля, при помощи функции dl() 
:(
    Опции темы
Гриша
Дата 11.2.2006, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



Задравствуйте.
Вот такая проблема:

Если в php.ini я подключаю модуль php_templates.dll, то он работает, все впорядке:
extension_dir = e:/usr/PHP/extensions/
extension=php_templates.dll

Если же я пытаюсь подключить его при помощи функции dl(), например так:
Код

dl("php_templates.dll");
То в браузере выводится ошибка:
Warning: dl() [function.dl]: Not supported in multithreaded Web servers - use extension statements in your php.ini in e:\home\link\www\add_url\templates.php on line 5

Сам файл .php (template.php), шаблон (template.html) и модуль php_templates.dll, лежат в одной директории.


Также я пробовал так:
Код

if(!extension_loaded('templates')) dl("php_templates.dll");
и так (с указаниме полного пути)
Код

if(!extension_loaded('templates')) dl("e:/home/link/www/add_url/php_templates.dll");


php.ini у меня настроен так, как описано здесь:
http://phpclub.ru/faq/wakka.php?wakka=Install&v=j4j

Это сообщение отредактировал(а) Гриша - 11.2.2006, 13:14
--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 11.2.2006, 00:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



А зачем ты dl() используешь, когда ты в php.ini уже подключил либу?
Веб-сервер какой?
PM ICQ   Вверх
Гриша
Дата 11.2.2006, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



Забыл указать, что когда я использую функцию dl(), я отключаю модуль в php.ini, это я делаю для того что бы научиться использовать эту функцию и использовать ее на хостинге, где php.ini не доступна.
Apache 1.3.34, PHP 4.3.0

Это сообщение отредактировал(а) Гриша - 11.2.2006, 10:53
--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 11.2.2006, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



PHP как настроен?

Цитата(Гриша @ 11.2.2006, 10:46 Найти цитируемый пост)
использовать ее на хостинге, где php.ini не доступна.

Хостинги на Юникс платформе в основном, и dl тебе там не поможет.
PM ICQ   Вверх
Гриша
Дата 11.2.2006, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



PHP я установил вручную.
Скачал php4ts.dll, в /windows/system 32/ и php.ini-dist (переименовав в php.ini) в /windows/, и вот так настроил httpd.conf в Apche:
- LoadModule php4_module E:/usr/php/sapi/php4apache.dll
- AddModule mod_php4.c
Внутри блока <IfModule mod_mime.c>
- AddType application/x-httpd-php .php
В строке DirectoryIndex пропишите index.php:
- DirectoryIndex index.php index.html

php.ini настроен дополнительно так:
extension_dir=e:/usr/php/extensions/
register_globals = off
magic_quotes_gpc = off
magic_quotes_runtime = off
error_reporting = E_ALL - и именно так, никаких E_ALL & ~E_NOTICE и пр.!
display_errors = on


На хостинге я пытаюсь подключаю так:
dl("php_templates.so");
Т.е. я понимаю, что в Unix, расширение должно быть .so

--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 12.2.2006, 01:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



А so файл залил?
Точно эта либа под Юникс собрана?
PM ICQ   Вверх
Гриша
Дата 12.2.2006, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



Mal Hack, да я на хостинге закачал этот файл.
Скачиваю я модуль отсюда, http://sourceforge.net/project/showfiles.php?group_id=41542&package_id=33606 ://http://sourceforge.net/project/show...ckage_id=33606 скачал там самый верхний файл, просто потому что там есть расширение .so, но ообще он вроде как для linux (сказали что это unix подобная ситема, рапространяется только бесплатно) - php_templates-1.7.1-4.3.4-linux-i686.tar.gz
Может быть вы сможете посмотреть и подсказать какой скачать мне файл, на хостинге у меня Apache 1.3.33 (Unix), PHP 4.3.9

=======================
И я вот не пойму почему я немогу подключить модуль при помощи dl() на домашнем компьютере Apache 1.3.34, PHP 4.3.0, ведь через php.ini он подключается:
Вот такая ошибка: Warning: dl() [function.dl]: Not supported in multithreaded Web servers - use extension statements in your php.ini in e:\home\link\www\add_url\templates.php on line 5
Типа чтот, то не так в php.ini

Это сообщение отредактировал(а) Гриша - 12.2.2006, 19:09
--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 12.2.2006, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Судя по всему сервер не позволяет этого делать используя dl();
PM ICQ   Вверх
Гриша
Дата 12.2.2006, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



Mal Hack, спасибо что помогали разобраться.
Может вы мне сможете мне подсказать, какой из модулей представленных на этой странице http://sourceforge.net/project/showfiles.p...ackage_id=33606 подходит для unix, если конечно там есть на это укзатели.

И в не знаете, где можно сделать изменения, например на то, чтобы сервер дал сделать разрешение на использование dl(). Это надо делать в php.ini или http.conf.
Я вообще никак не могу понять что игде надо делать, чтобы эта гребаная йункция заработала, уже 3 день вожусь с ней.
--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 12.2.2006, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(Гриша @ 12.2.2006, 19:13 Найти цитируемый пост)
И в не знаете, где можно сделать изменения, например на то, чтобы сервер дал сделать разрешение на использование dl(). Это надо делать в php.ini или http.conf.

Как мне кажется, скорее дело не в настройках, а в принципе работы...
PM ICQ   Вверх
Гриша
Дата 12.2.2006, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



Mal Hack, мне разъяснили в чем проблема на моем хостинге и на домашнем компьютере.

На домашнем компьютере вот что:способ - dl() не работает из-под апача, т.к. он multi-thread сервер под виндой, о чем и сообщается в ошибке.

На хостинге вот, что:

У меня extension_dir=/usr/local/lib/php/20020429
А templates.so лежит в /home/pozvono9/public_html/link/add_url

Я указываю такой путь (что какбы вылезти из папок указанных в extension_dir и залезть в новые):
dl('../../../../../home/pozvono9/public_html/link/add_url/php_templates.so');

А мне всеравное выдается ошибка, о том, что по указанному пути нет нужного файла: Unable to load dynamic library '/usr/local/lib/php/20020429/../../../../../home/pozvono9/public_html/link/add_url/php_templates'

Т.е. я какбы немогу вылезти из этих папок /usr/local/lib/php/20020429, хотя расположение вот этих строк ../../../../../../ перечислено в нужном кол-ве,
я даже у себя на компьютере создавал описанные папки, и проверял правильность пути, все указано верно, но сервер почемуто этого не понимает.

Вот если с этим вы мне теперь сможите помочь.
--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 12.2.2006, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Покажи структуру каталогов, где у тебя лежит so файл и где скрипт, который хочет его подлючить.

Цитата(Гриша @ 12.2.2006, 20:03 Найти цитируемый пост)
На домашнем компьютере вот что:способ - dl() не работает из-под апача, т.к. он multi-thread сервер под виндой, о чем и сообщается в ошибке.

Ошибка об этом и говорила smile
PM ICQ   Вверх
Гриша
Дата 12.2.2006, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1



Mal Hack, я то непонимал что мне говорила ошибка, ну теперь понял.

extension_dir=/usr/local/lib/php/20020429

$_SESSION['DOCUMENT_ROOT'] = /home/pozvono9/public_html/link

Модуль лежит здесь:
/home/pozvono9/public_html/link/add_url/templates.so

И скрипт лежит тоже здесь:
/home/pozvono9/public_html/link/add_url/templates.php


==========================================
Я также попробовал изменить параметр 'extension_dir', но результата никакого, скорее всего это запрещено?

$old_extension_dir = ini_set('extension_dir', '/home/pozvono9/public_html/link');
echo '<br>old_extension_dir='.$old_extension_dir;

$extension_dir = ini_get('extension_dir');
echo '<br>etension_dir='.$extension_dir;

Это сообщение отредактировал(а) Гриша - 12.2.2006, 20:41
--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Mal Hack
Дата 12.2.2006, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Попробуй в dl тупо написать ./
или /home/pozvono9/public_html/link/add_url/templates.so
PM ICQ   Вверх
Гриша
Дата 12.2.2006, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НУС(незнаю|узнаю|создаю)
*


Профиль
Группа: Участник
Сообщений: 181
Регистрация: 12.6.2005
Где: Земля, Москва, Хр ущевка

Репутация: 1
Всего: 1




Когда пишу вот так: /home/pozvono9/public_html/link/add_url/templates.so
Unable to load dynamic library '/usr/local/lib/php/20020429//home/pozvono9/public_html/link/add_url/php_templates.so'

Когда пишу вот так: ./templates.so
Unable to load dynamic library '/usr/local/lib/php/20020429/./home/pozvono9/public_html/link/add_url/php_templates.so'

Если других вариантов нет, попробую еще в другом месте поспрашивать, а вам спасибо большое за помощь.


--------------------
Если долго мучиться, что-нибудь получитЬся.
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1243 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.