2013-10-02 4 views
1

Я знаю, что есть другие вопросы о проблемах с PGSQL, которые не загружаются, но я не нашел решение, которое работает для меня, и напрямую адресует установку IIS под Windows (очевидно). Использование PostgreSQL 8.4.PGSQL не загружен в PHP 5.3 Windows под IIS

Поскольку я полный новичок в PHP (только пытаюсь запустить MantisBT), я нахожу это чрезвычайно трудным для отладки/исследования.

Я установил путь как к папке bin PostgreSQL, так и к папкам PHP (первая вставка версии v5.3 и корень PHP после этого). Я проверил, что libpq.dll присутствует во всех трех этих папках, и я попытался скопировать libpq.dll из папки PostgreSQL в обе папки PHP. Я убедился, что php.ini содержит

extension=php_pdo_pgsql.dll 
extension=php_pgsql.dll 

в обеих папках PHP (как root, так и v5.3).

Что еще можно проверить/попробовать/изучить?

+0

(1) Почему вы выбрали старую версию PostgreSQL? (2) Установлен ли он успешно и запущен - можете ли вы подключиться из psql/pg_admin (?) –

+0

Что-нибудь в журналах (событиях)? http://stackoverflow.com/questions/551734/php-not-loading-php-pgsql-dll-on-windows/ –

+0

@ Richard: Я установил PostgreSQL более года назад, и я думаю, что я схватил все, что было в то время , Затем я завалился другой работой и до сих пор не стал смотреть на нее. Кажется, что работает PostgreSQL - я могу подключиться к pgadmin, как к серверу, так и к базе данных MantisBT, используя имя пользователя и пароль, которые я настроил для MantisBT. Но очевидно, что он не работает в вызове для запуска соединения с БД в core.php (или что-то еще). –

ответ

1

Пробовал phpinfo() снова, и он сообщает

Loaded Configuration File = C:\Program Files (x86)\PHP\v5.3\php.ini 

, который правильно и содержит extension=php_pdo_pgsql.dll и extension=php_pgsql.dll. Что касается «dll's находятся в нужном месте» (@Richard), у меня проблемы с тем, что именно то, что dll: s необходимо и где они должны быть расположены, но у меня есть в C:\Program Files (x86)\PHP\v5.3\ext\ и php_pdo_pgsql.dll (версия 5.3.12.0) и php_pgsql.dll (версия 5.3.12.0).

Я читал о зависимости от libpq.dll, и он присутствует в C:\Program Files (x86)\PHP\v5.3\. В начале моей «отладки» я скопировал новый libpq.dll (версия 8.4.4.10133) из PostgreSQL в эту папку, прочитав где-нибудь, что он может решить проблему. Теперь я попытался вернуться к старой версии (8.3.6.9034), которая поставляется с PHP, и VOILA !!!! Внезапно phpinfo() говорит, что он загрузил модули pdo и non-pdo pgsql.

MantisBT теперь загружает экран входа в систему как минимум. Уф!

+0

Я не совсем уверен, почему это не сработает, но я подозреваю, что это было по существу проблема пути. Я обновил libpq.dll перед добавлением пути к папке PostgreSQL и вложенной папке PHP 5, и я думаю, что это действительно единственное изменение, которое я сделал, что я не отменил сейчас. –

 Смежные вопросы

  • Нет связанных вопросов^_^