Имате ли OCIEnvNlsCreate() неуспех? Добре дошли в ада...
Знам, че темата е стара, но проблема все още е налице. И обикновено отговорите на този проблем пренасочват към сайтове на трети страни, обикновено 404s .
Да започнем с проблема. Самата грешка е доста обща. Неговата документация обобщава до "lib се срина...не знам защо". Има широк набор от решения, включително, но не само, конфигуриране, преинсталиране и молба за „вмъкване на случайно име на бог тук“.
Ето кратък списък с най-често срещаните решения:
1. Поставете променливата във вашия .php файл.
putenv("LD_LIBRARY_PATH=$newld");
where $newld is the link to your library.
2. Премахнете променливата LD_LIBRARY_PATH , ако съществува (да, както беше показано в 1.), от вашия php файл и го поставете във вашия apache2.conf или httpd.conf или /etc/environment или какъвто и да е файл, който вашата дистрибуция/версия има за променливите на средата. Лесно ръководство може да намерите тук или навсякъде в интернет. Защо?
както е посочено в документите за инсталиране. Също така рестартирайте Apache след това. Базира се на разпространение/версия, но най-вероятно командата е service httpd restart
.
-
Преинсталирайте oci8 . Колкото пъти е нужно. Не го насилвайте. Насилването само го влошава. Също така опитайте да го компилирате (известен още като изтегляне на пакета, използвайте
./configure -'all the fancy commands you'll need to use'
и след товаmake install
). -
Уверете се, че имате правилния
LD_LIBRARY_PATH
. Смешно нещо, нали? Вероятно не сте забелязали, че Oracle създаде папкатаclient/lib/
в N различни местоположения който съдържа повече или по-малко същите файлове и единствената разлика между тях е, че избирането на всички освен една от тези папки ще доведе до споменатата грешка . Здравна проверка? -
Преинсталирайте php/apache . Вероятно сте имали стара инсталация, която създава проблеми. Затова използвайте
apt-get purge php*
илиyum remove php*
или каквото и да прави същия трик за вашето разпространение, ще бъде добро начало.
РЕДАКТИРАНЕ След надстройката на PHP проблемът се появи отново, този път с различно решение.
-
РЕДАКТИРАНЕ НА SYSCONFIG Редактирайте файла /etc/sysconfig/httpd. Добавете тези 2 реда в края:
експортиране LD_LIBRARY_PATH=/path/to.libexport ORACLE_HOME=/path/to/home
-
ОТКАЖЕТЕ СЕ И ПРОЧЕТЕТЕ РЪКОВОДСТВОТО може да се намери тук .
Ако нито едно от тези неща не помогне, не се колебайте да разгледате стената на скръбта , за решение...