Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование Web серверов и Web служб > Apache+Oracle


Автор: rikoua 30.3.2009, 19:52
Доброе время суток. 
У меня возникла проблема ... нужно настроить Apache что бы он работал с Oracle и что бы потом с помощью PHP можна  было что то писать в базу оракл. 

Не могли бы вы написать пошаговую настройку ... с момента установки Apache и Oracle !!!

Автор: azesmcar 30.3.2009, 19:57
rikoua апач с оракл не работает. Работает PHP. но настройка зависит от операционной системы. В виндоуз надо просто скачать Extension и подключить его в PHP.INI, в линукс сложнее, если компилировал PHP, надо перекомпилировать с поддержкой оракл..указать пути к lib -ам оракла. Другого метода установки PHP не знаю..  smile 

Автор: rikoua 30.3.2009, 20:04
azesmcar, А нету разницы куда устанавливать оракл ... и посоветуй какую версию лучше ставить, какте модули нада ....

делал так ... 
роскоментил отету строчку
;extension = php_oci8.dll

скачал и подключил этот модуль ....
extension = php_oracle.dll

но что то ничё не работает %)

Автор: azesmcar 30.3.2009, 20:11
Цитата

azesmcar, А нету разницы куда устанавливать оракл ... и посоветуй какую версию лучше ставить, какте модули нада ....


я говорил не про оракла а про PHP.
Цитата

но что то ничё не работает %) 


а логи проверил? apache/logs/

Автор: rikoua 31.3.2009, 08:35
Вот что в логах апача пишется ...

[Tue Mar 31 08:26:22 2009] [error] [client 127.0.0.1] PHP Warning:  PHP Startup: Unable to load dynamic library './ext/php_oracle.dll' - \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.\r


.... хотя php_oracle.dl  есть в этой директиве (/ext/) !!! Может какая то плохая либа ?

Автор: lelik133 31.3.2009, 08:45
а что у вас в extension_dir прописано?
необходимо прописать полный путь к папки
Код

extension_dir = "C:/Program Files/PHP/ext"

Автор: azesmcar 31.3.2009, 08:46
rikoua ну и?? в чем проблема то? не может найти php_oracle.dll
установи
extension_dir в php.ini
extension_dir=C:\php5\ext например

Добавлено через 1 минуту и 27 секунд
вообще вот тут почитать не помешает smile
http://www.oracle.com/technology/pub/notes/technote_php_instant.html

Автор: rikoua 31.3.2009, 09:02
lelik133, отак прописано ... 

extension_dir = "./ext/"

делал и так: extension_dir = "C:/server/local/bin/PHP/ext/"

не помагает .... %)

Автор: azesmcar 31.3.2009, 09:05
rikoua
Цитата

делал и так: extension_dir = "C:/server/local/bin/PHP/ext/"


apache перезагружал после этого? логи смотрел? php.ini точно этот загружается? создай в htdocs файл php
Код

<?php
   phpinfo();
?>


посмотри в нем какая конфигурация сидит

Автор: rikoua 31.3.2009, 09:14
azesmcar,

Цитата

apache перезагружал после этого? логи смотрел? php.ini точно этот загружается? создай в htdocs файл php


перезагружал канечно, смотрел логи - тоже самое %)  (PHP Warning:  PHP Startup: Unable to load dynamic library './ext/php_oracle.dll' - \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.\r,)

 phpinfo(); делал  ... 

Автор: azesmcar 31.3.2009, 09:23
rikoua ну а что тут думать..не тот php.ini загружается который ты изменил..сделай как я сказал, создай файл с phpinfo(), там поищи путь к php.ini который используется, его и отредактируй

Автор: rikoua 31.3.2009, 09:41
Я так и делал, именно его и редактировал. 

Смотри ... делаю так, запускаю такой код:

Код

<?php 
if ($c=OCILogon("SYSTEM", "root", "XE")) { 
  echo "Successfully connected to Oracle.\n"; 
  OCILogoff($c); 
} else { 
  $err = OCIError(); 
  echo "Oracle Connect Error " . $err[text]; 
} 
?> 


... выдает такую ошибку 
Warning: ocilogon() [function.ocilogon]: ORA-12154: TNS:could not resolve the connect identifier specified in C:\server\local\www\kval\oracle.php on line 3
Oracle Connect Error 

И в error.log пишется:

[Tue Mar 31 09:28:43 2009] [error] [client 127.0.0.1] PHP Warning:  PHP Startup: Unable to load dynamic library './ext/php_oracle.dll' - \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.\r
[Tue Mar 31 09:28:43 2009] [error] [client 127.0.0.1]  in Unknown on line 0

Автор: azesmcar 31.3.2009, 09:46
rikoua
Цитата

Warning: ocilogon() [function.ocilogon]: ORA-12154: TNS:could not resolve the connect identifier specified in C:\server\local\www\kval\oracle.php on line 3


это уже совсем другая ошибка, наверняка ошибка с того времени осталась. Апач не очищает лог файлы.
У тебя есть сервис XE? Проверь настройки оракл клиента, попытайся сконектится с помощью SQLPlus с теми же параметрами

Автор: rikoua 31.3.2009, 09:49
Да есть такой сервис ... А в логах то не старые ошибки а новые, по времени же видно !

Автор: azesmcar 31.3.2009, 10:03
Цитата

Да есть такой сервис 


a SQLPlus подключается?
Цитата

А в логах то не старые ошибки а новые, по времени же видно ! 

так, секунду..ты какой модуль скачал?
php_oracle.dll или php_oci8.dll? И какую строку раскоментарил в пхп.ини?

Автор: rikoua 31.3.2009, 10:16
php_oracle.dll и php_oci8.dll, обе раскоментил в пхп.ини !!! 

SQLPlus не пробовал ещё ... попробую напишу !!!

Автор: azesmcar 31.3.2009, 10:18
Цитата

php_oracle.dll и php_oci8.dll, обе раскоментил в пхп.ини !!! 


но файл то у тебя один из них верно? Закоментарь тот которого нет и ошибка исчезнет, а функции оракл работают нормально в пхп, это всего лишь варнинг что невозможно подключится по какой-то причине..

Автор: rikoua 5.4.2009, 10:44
Файл у меня и тот и тот есть в модулях smile 

... Уже вроде потконектил.

Возник новый вопросс: какой оракл лучше ставить? ...  а то я поставил OracleXE-10.2.0 и немогу понять в нем вроде нельзя создавать новую базу, а тольок таблички в уже существующей базе. Что скажешь по этому поводу ?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)