IIS 8 - PHP Manager - Включение php_oci8.dll для соединения с Oracle
Я должен был бы соединиться с БД Oracle в моих кодах PHP.
Я использую Windows Server 2012, IIS 8 с PHP Manager и PHP версии 5.5.11. Я открыл IIS PHP Manager, затем перешел к расширениям PHP, затем включил расширение "php_oci8.dll".
extension=php_oci8.dll
;extension=php_oci8_11g.dll
Однако, когда я пытался подключиться к базе данных Oracle, я получаю следующую ошибку PHP:
PHP Fatal error: Call to undefined function oci_connect()
Я просто перезапустил IIS с помощью диспетчера IIS, но не перезагрузил компьютер. Нужно ли перезагружаться?
Нужно ли мне также скачивать "instantclient-basic-windows.x64-12.1.0.1.0.zip"? Я попытался извлечь его и поместить каталог в переменную окружения "Путь", но все равно не работает.
Команда PHPInfo Configure:
cscript /nologo configure.js "--enable-snapshot-build" "--enable-debug-pack"
"--disable-zts" "--disable-isapi" "--disable-nsapi" "--without-mssql"
"--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=C:\php-sdk\oracle\x86\instantclient10\sdk,shared"
"--with-oci8=C:\php-sdk\oracle\x86\instantclient10\sdk,shared"
"--with-oci8-11g=C:\php-sdk\oracle\x86\instantclient11\sdk,shared"
"--with-enchant=shared" "--enable-object-out-dir=../obj/"
"--enable-com-dotnet=shared" "--with-mcrypt=static"
"--disable-static-analyze" "--with-pgo"
Заранее большое спасибо.
2 ответа
Попробуй скопировать
- orannzsbbxx.dll
- oci.dll
- oraocieixx.dll
из вашего InstantClient-basic-windows.x64-xxx.zip в C: \ Windows \ SysWOW64. Затем перезапустите службу IIS и проверьте phpinfo()
,
Только php_oci8.dll должен быть включен.
Моя переменная окружения Path содержит только путь PHP, без InstantClient.
Это помогло мне.
Ответы на ваши вопросы вы найдете в официальной ссылке: http://www.oracle.com/technetwork/articles/dsl/technote-php-instant-084410.html