Мы переносимся с Windows SBS 2011 на Windows Server 2012 R2.
У нас есть внутренний веб-сайт, который подключается к нашей базе данных Oracle с помощью PHP.
Я пытаюсь перенести это на новый сервер, и до сих пор у меня есть:
Я все еще получаю сообщения об ошибках, такие как команды oci_, которые не распознаются и т. Д.
Я потерялся. Я искал в Интернете, и инструкции соответствуют тому, что я сделал из памяти.
Я не нашел ни одной вещи в Интернете, которую я еще не сделал.
В зависимости от версии InstantClient, которую вы установили, вам может потребоваться включить папку bin
в путь, например:
C:\instantclient\bin
Чтобы проверить, доступны ли DLL-файлы в пути, введите where oci*.dll
в командной строке. Он должен вернуть список совпадающих файлов.
Кроме того, помните, что только потому, что ваша учетная запись может видеть файлы DLL, не означает, что IIS / PHP могут. Это выполняется под другой учетной записью, которая может не иметь разрешения на доступ к файлам. Проверьте свой журнал ошибок IIS и файл PHP php_errors.log
для получения каких-либо конкретных сообщений об ошибках.
редактировать
После довольно продолжительного общения проблема была решена:
msvcr71.dll
в папку InstantClient. Path
правильно указана на папки InstantClient и PHP. попробуй это:
extension = php_oci8_12c.dll (вместо php_oci8.dll) – это то, что я использую, и вы, вероятно, загрузили тот же мгновенный клиент, что и я.