Forum Webscript.Ru

Программирование => PHP => Тема начата: che от 27 Мая 2003, 12:19:17

Название: OpenBSD, php, pear
Отправлено: che от 27 Мая 2003, 12:19:17
Дорова!

Вопрос такой вот не тривиальный :)
Задача такая - заставить работать Horde
Есть БСД, есть пхп, mysql, и нужно подключение pear
как положено pkg_add, всё уже установлено

но вот такой вот ключик phpxs -a pear не прокатывает, оттого что *.so   pear нет, это понятно

как быть? потому как hordeвский тест показывает, что библиотеки pear не подключены.

С уважением che.
Название: OpenBSD, php, pear
Отправлено: Макс от 27 Мая 2003, 12:30:17
не знаю что там в Horde , но вообще-то pear подключается так:
1. Скачиваются нужные классы в одну папку (либо устанавливаются через специальный скрипт)
2. на эту папку настраивается include_path (через php.ini или .htaccess).
Название: OpenBSD, php, pear
Отправлено: che от 27 Мая 2003, 18:09:22
как папка называется?
Название: OpenBSD, php, pear
Отправлено: ThE0ReTiC от 27 Мая 2003, 18:10:30
Цитировать
che:
как папка называется?

ДА хоть горшком назови...
Название: OpenBSD, php, pear
Отправлено: che от 27 Мая 2003, 19:05:20
ThE0ReTiC  хамить в ответ не буду, хотя вопрос я вполне конкретный задал!

Макс
php.ini
include_path = /usr/local/lib/php/PEAR

не помогает :(

PEAR
PEAR - No
Check your PHP include_path setting to make sure it has the PEAR library directory.
Recent PEAR - No
Mail - No
Log - No
DB - No
Net_Socket - No
Date - No
HTML_Common/HTML_Select - No
Unknown error: Failed opening \'Mail/mimeDecode.php\' for inclusion (include_path=\'usr/local/lib/php/PEAR\') (/htdocs/horde/test.php:194)
Название: OpenBSD, php, pear
Отправлено: ThE0ReTiC от 27 Мая 2003, 19:10:31
che
ты получил весьма конкретный ответ от Макс и продолжаешь задавать магко говоря бессмысленные вопросы
надеюсь папка называется именно PEAR а не pear ?
Название: OpenBSD, php, pear
Отправлено: che от 27 Мая 2003, 19:27:31
вопрос мягко говоря не бессмысленный, поскольку многое зависит от системы, я настраиваю всё под OpenBSD, когда я устанавливаю pear, я понятия не имею куда установочный скрипт копирует данные, откуда я могу знать тогда как называется папка?

папка на которую я думаю называется PEAR, pear папки внутри php папки нет

но всё равно легче от этого не становитися, поскольку всё равно не работает :(

зы если бы у меня не было проблемы меня бы тоже здесь не было, и я никого бы не донимал
Название: OpenBSD, php, pear
Отправлено: Макс от 27 Мая 2003, 22:01:43
Поясняю
1. Что такое include_path ?
Эта переменная (или опция, не знаю как правильно назвать) содержит список путей где php будет искать файлы при попытке подключить их через include/require.
Например:
php.ini:
include_path = ".:/usr/local/php/pear/\';
в скрипте:
require_once("Mail/mimeDecode.php\');

ПХП будет искать файл Mail/mimeDecode.php сначало в текущей папке, а потом в /usr/local/php/pear
Если найдет - он их подключит.
Я думаю ты в курсе что регистр в именах файлов имеет занчение (под openBSD)

2. У тебя классы перечисленные выше есть локально ?
Если нет - то http://pear.php.net скачай необходимые классы или попробуй разобраться с http://go-pear.org (я с ним не работал).
Если они у тебя есть - запиши их в папку PEAR
Название: OpenBSD, php, pear
Отправлено: che от 27 Мая 2003, 23:56:34
Макс

как ты знаешь, у нас под OpenBSD php идёт либов пакетах, либо в сырцах, пакеты вещь рекомендованная, это так же относится и к библиотекам

всё я сделал, как ты говорил, но НЕ РАБОТАЕТ :(


/usr/local/php/pear у меня НЕТ :(

/usr/local/lib/php/ а там внутри все классы перечислены :(
хоть как подключай с
include_path =/usr/local/lib/php/
include_path =/usr/local/lib/php/PEAR

всё равно horde ругается говорит не могу найти, проверь путь, а какой ей ещё путь нужен?

может дело в том что библиотеки лежат вне www  и тогда могут быть проблемы с правами на файлы и папки :(

ещё вот интересный ньюанс
все классы
Mail
DB
PEAR
HTML
XML

всё это лежит в
/usr/local/lib/php/

не знаю что и думать, БЛИН самая безопасная ситема, НИФИГА НЕ СДЕЛАЕШЬ :)
Название: OpenBSD, php, pear
Отправлено: Макс от 28 Мая 2003, 00:28:57
Цитировать
/usr/local/php/pear у меня НЕТ

это просто пример, создай эту папку
можешь вообще создать папку /bla/bla/bla/ha/ha/ha/ , записать сюда pear-овские классы, сделать
include_path = ".:/bla/bla/bla/ha/ha/ha/"
и все должно работать.
Цитировать
всё это лежит в
/usr/local/lib/php/
и include_path = ".:/usr/local/lib/php/" не работает ?
положи в папку с хордой файл phpinfo.php с содержимым:
 
и найди там строку про include_path , посмотри его значение

кстати
Цитировать
Unknown error: Failed opening \'Mail/mimeDecode.php\' for inclusion (include_path=\'usr/local/lib/php/PEAR\')
судя по этому сообщению у тебя неправильное значение include_path
Название: OpenBSD, php, pear
Отправлено: Макс от 28 Мая 2003, 00:30:59
да, и цитируй плиз все ошибки, то есть без вольного перевода типа :
Цитировать
всё равно horde ругается говорит не могу найти, проверь путь, а какой ей ещё путь нужен?
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 00:40:30
Макс

не я тоже не вчера за компьютер сел, можешь сам посмотреть
http://131.246.236.156/test.php
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 00:42:31
Unknown error: Failed opening \'Mail/mimeDecode.php\' for inclusion (include_path=\'usr/local/lib/php/PEAR\')

вот в этоv сообщении если ты заметишь, пропушен СЛЕШЬ перед usr

я только потом разглядел, но исправление ничего не дало
Название: OpenBSD, php, pear
Отправлено: Макс от 28 Мая 2003, 01:15:21
Цитировать
не я тоже не вчера за компьютер сел
верю, сразу за OpenBSD врятле кто сядет =)

Цитировать
Unknown error: Failed opening \'Mail/mimeDecode.php\' for inclusion (include_path=\'usr/local/lib/php/PEAR\')
ты ведь сказал что у тебя нет папки pear. Верно ?
Тогда должно быть
/usr/local/lib/php/

И лучше пиши так: ".:/usr/local/lib/php/"

ЗЫ
Твоя ссылка у меня не открывается так что не знаю что там у тебя там
Название: OpenBSD, php, pear
Отправлено: Макс от 28 Мая 2003, 01:17:53
Сорри, ссылка уже открывается :)
Да include_path вроде верный
положи в папку такой файл:

require_once("DB.php");
?> Ok
Выполни это, есть ли ошибка ?
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 03:14:57
Макс  это я перегружался,  MySQL не пашет, вернее не пахало :(, итак целый день mysql и pear, ещё MCAL :(

это путь к мои ошибкам
http://131.246.236.156/horde/test.php

куда, тобишь в какую папку то положить? тот файл?

я так понимамаю, продолжим мы завтра, и файл я тоже завтра выложу, у меня уже 01:16 ночи а в 9:00 на работу :)
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 03:23:00
значит зделал как ты и сказал

http://131.246.236.156/testDB.php
Название: OpenBSD, php, pear
Отправлено: Макс от 28 Мая 2003, 10:36:49
Так, ты писал что у тебя все классы в /usr/local/lib/php/
Судя по http://131.246.236.156/testDB.php у тебя их там нет.
У тебя там должны быть файлы:
PEAR.php, DB.php, Mail.php, Log.php (может чего и забыл)
Папки: PEAR, DB, Mail, Log, Net, XML, Date, HTML (в каждой папке свои файлы)
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 11:22:47
Макс  ты смеяться будешь НО ОНИ ТАМ ЕСТЬ :) и папки и файлы, файлы лежат в директории php, а потом паки ещё

вот этого я и не понимаю :(
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 12:03:59
#ls -l /usr/local/lib/php
доступ на файлы 644
PEAR.php, DB.php, Mail.php, Log.php
на папки 755
PEAR, DB, Mail, Log, Net, XML, Date, HTML (в каждой папке свои файлы)

один ньюанс, всё принадлежит root из группы wheel, может в этом загвоздка?
Название: OpenBSD, php, pear
Отправлено: trent от 28 Мая 2003, 12:13:54
еще session.save_path пропиши на существуюшую директорию и права нужные выставь..
или создай /tmp и поставь на нее права drwxrwxrwx(777)
также положи PEAR в отдельную директорию, где лежит php, например /usr/local/lib/php/PEAR/, то есть DB.php должен находиться по /usr/local/lib/php/PEAR/DB.php  и дай права на чтение из этой директории drwxr--r--(744). Затем посмотри чтобы у тебя в include_path = ".;/usr/local/lib/php/PEAR/"
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 12:30:51
include_path = ".;/usr/local/lib/php/PEAR/"

а не

include_path = ".:/usr/local/lib/php/PEAR/" ?

будем считать это опиской
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 12:38:47

[root@regular]#ls -l /usr/local/lib/php
total 244
drwxr-xr-x 2 root wheel 512 May 26 19:43 Archive
drwxr-xr-x 2 root wheel 512 May 26 19:43 Console
drwxr-xr-x 2 root wheel 512 May 26 19:43 Crypt
drwxr-xr-x 2 root wheel 512 May 26 19:43 DB
-rw-r--r-- 1 root wheel 27819 Mar 20 14:45 DB.php
drwxr-xr-x 2 root wheel 512 May 26 19:43 Date
drwxr-xr-x 2 root wheel 512 May 26 19:43 File
-rw-r--r-- 1 root wheel 17108 Aug 18 2002 File.php
drwxr-xr-x 2 root wheel 512 May 26 19:43 HTML
drwxr-xr-x 2 root wheel 512 May 26 19:43 HTTP
-rw-r--r-- 1 root wheel 6554 Mar 20 14:45 HTTP.php
drwxr-xr-x 2 root bin 512 May 26 19:43 Image
drwxr-xr-x 2 root wheel 512 May 26 19:43 Log
-rw-r--r-- 1 root wheel 6920 May 22 2002 Log.php
drwxr-xr-x 2 root wheel 512 May 26 19:43 Mail
-rw-r--r-- 1 root wheel 7287 Mar 20 14:45 Mail.php
drwxr-xr-x 2 root wheel 512 May 26 19:43 Net
drwxr-xr-x 4 root wheel 512 May 26 19:43 PEAR
-rw-r--r-- 1 root wheel 24378 Mar 20 14:45 PEAR.php
drwxr-xr-x 2 root wheel 512 May 26 19:43 Schedule
-rw-r--r-- 1 root wheel 13327 Mar 20 14:45 System.php
drwxr-xr-x 2 root wheel 512 May 26 19:43 XML
drwxr-xr-x 2 root wheel 512 May 26 19:43 build
drwxr-xr-x 2 root bin 512 May 26 18:45 modules
[root@regular]#
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 12:41:23
мы вот тут ещё обсуждаем, с вашего позволения

http://www.php4you.kiev.ua/talk/showthread.php?postid=5785#post5785
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 13:11:42
trent

перенёс я все файлы в
/usr/local/lib/php/pear/
ничего не изменилось :(

session.save_path где прописать в php.ini?
так прописан он
http://131.246.236.156/horde/test.php?mode=phpinfo
Название: OpenBSD, php, pear
Отправлено: Макс от 28 Мая 2003, 14:06:21
странно.
сделай в твоей папке /htdocs/horde/ папку pear/, залей в нее все классы и
include_path = ".:/htdocs/horde/pear/"

работать будет ?  (права сделай такие же как и скрипты Horde)

в php.ini
session.save_path = /tmp
права на /tmp 777
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 14:57:25
Макс

сделал я так

/htdocs/horde/ папку pear/, залил в нее все классы и
include_path = ".:/htdocs/horde/pear/"

работает но только от части  http://131.246.236.156/horde/test.php

как и рекомендуют пойду за свежаком, говорят не свежая у тебя гуша :(

так как же быть, чтобы из /usr/local/lib/php библиотеки подгружать?

обратил внимание, что права доступа по умолчанию на грушу в OpenBSD 744, а не 755

а вот сессионный путь /tmp и так существует с правами 777, что то тут не чисто :(
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 15:00:39
а пакет MCAL кто нить ставил?
Название: OpenBSD, php, pear
Отправлено: MrGreeN от 28 Мая 2003, 15:09:06
che
У тебя там на http://131.246.236.156/horde/test.php два ворнинга, 1. бишь temp не существует (но у тебя же он есть?!)
2. не знаю как это под никсом, но под виндой надо кроме прав на запись дать ещё права на изменение
Название: OpenBSD, php, pear
Отправлено: che от 28 Мая 2003, 15:22:18
вполне очевидно, что всё происходит не откривызны моих рук :) а в силу моего незнания иногда, ну а в большей степени в настройках системы по умолчению

про два ворнинга я в курсе, спасибо я видел

/tmp СУЩЕСТВУЕТ! chmod 777
Название: OpenBSD, php, pear
Отправлено: archy от 30 Мая 2003, 11:07:17
а apache в OpenBSD 3.x в chroot идет!
запусти его с -u
Название: OpenBSD, php, pear
Отправлено: che от 01 Июня 2003, 01:24:19
archy  и чё это даст? и где запускать если запускать?

вопрос ещё такой

horde я отложил в дальний ящик вместе с его проблемой mcal

вопрос другой

так как на опенбсд слишком долго обновляются пакеты, а я хочу установить новую версию pear

как я понимаю мне достаточно развернуть архив с pear
в директории /usr/local/lib/php или /usr/local/lib/php/pear
а в php.ini просто задать правильнуйпуть в include_path?
Название: OpenBSD, php, pear
Отправлено: che от 03 Июня 2003, 12:45:44
есть такие вот архивы
http://www.horde.org/pear/

а если по человечески, без скрипта автоматической установки с оффсайта,

что нужно брать с оффсайта и класть
в /usr/local/lib/php
Название: OpenBSD, php, pear
Отправлено: Макс от 03 Июня 2003, 13:02:43
нифига не понял. На http://www.horde.org/pear/ есть же архивы pear-классов которые тебе нужно установить (распаковать в опред. папку). В чем проблема, распакуй и положи в папку на которую у тебя include_path установлен