За последние 24 часа нас посетили 16636 программистов и 1626 роботов. Сейчас ищут 1055 программистов ...

Apache + PHP + InterBase/FireBird (64bit)

Тема в разделе "Установка PHP", создана пользователем Meowth, 18 июн 2015.

  1. Meowth

    Meowth Новичок

    С нами с:
    18 июн 2015
    Сообщения:
    2
    Симпатии:
    0
    В корпоративной сети есть сервер с ОС Windows Server 2012 R2 64bit, созданный для размещения "web приложений"
    Естественно, что для работы было решено ставить 64bit версии приложений.
    Установлено:
    1) Apache 2.4.12 64bit, собранный с VC14
    после установки проверено - html страницы выдаёт (в том числе с виртуальных хостов, прописанных на корпоративном DNS сервере)
    2) PHP 5.6.10 VC11 Thread Safe, 64bit сборка (experimental)
    "прикручено" к Apache, проверено - простейшие скрипты обрабатывает
    подключены все модули, кроме php_interbase -> проверена работоспособность на простеньких скриптах
    3) Firebird 2.5.4 build 26856 (64bit)
    проверено с использованием обычного ПО: установка соединения с удалённым сервером БД происходит и идёт полноценная работа с базами данных

    И вот наступил тот самый тонкий момент, который никак обойти не удаётся, и решения найти самостоятельно тоже не получается
    в файле php.ini убирается комментарий со строки
    extension=php_interbase.dll
    служба Apache перезапускается (ошибок никаких не происходит), но при этом:
    1) попытки выполнить скрипт с соединением с БД выдают ошибку "неизвестная функция ibase_connect"
    2) проверка phpinfo по модулю interbase отображает только авторов, в списке загруженных его нет
    3) get_loaded_extensions также не выводит данный модуль в списке загруженных
    4) копание дальше привело в итоге к команде "php.exe -m"
    и вот данная команда выдала следующее сообщение
    При этом:
    1) Apache - 64 bit (в списке процессов рядом с ним нет "*32"), взятый тут
    2) FireBird так же 64 bit (тот же способ проверки битности сервера), взят тут
    3) PHP - сборка 64 bit, скачанная тут
    и найти что именно "не является приложением Win32" не удаётся

    Установка тех же самых версий (но в сборках 32bit) на Windows XP 32bit - проблем не возникает и всё сразу работает, а под 64bit вот такие проблемы

    Прошу помощь с поиском "места затыка" в данной ситуации
    На сервере с 8Gb оперативки, выделенном только для работы Apache + остальное, не хочется ставить версии 32bit. Тем более проект сейчас первый с планами расширения внутрикорпоративных "web-приложений".

    PS: есть подозрения, что библиотека php_interbase.dll не пересобирается под 64bit, а в дистрибутивах 64bit поставляется в виде 32bit, потому что в требованиях для неё "требует gds32.dll в папке system32" (аж несколько раз упоминаются пресловутые 32)... но, тогда непонятно почему эта же библиотека не "подхватывает" gds32.dll от 32bit версии FireBird... хотя, возможно что сама php_interbase (в варианте 32bit) не может быть взята PHP, который 64bit... но тогда вопрос: а почему разработчики её поставляют в комплекте, если это заранее неработоспособно...
     
  2. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Это же виндовс:)
    Хз виндовс всегда у меня вызывал подозрение, при старте долго грузится, такое чувство что он что то задумал:(
    Подними на линуксе.

    Добавлено спустя 3 минуты 36 секунд:
    Посмотри как вариант еще здесь
    https://support.microsoft.com/en-us/kb/812486/ru

    Добавлено спустя 1 минуту 6 секунд:
    попробуй перекачать FireBird
    http://www.izcity.com/faq/winxp/question1818.html
     
  3. Meowth

    Meowth Новичок

    С нами с:
    18 июн 2015
    Сообщения:
    2
    Симпатии:
    0
    админы не дают виртуальный сервер с линухой... типа "не подходит под положение о корпоративной сети"

    это первое что поисковик выдаёт, ничего позитивного не нашёл там..

    это совсем далёкое от нужного... тот же Apache 2.4 (собранный с VC14) на 32 битной XP выдаёт сам по себе подобное сообщение... но это уже "системные требования" сборки...

    используется лицензионный InterBase (unlimited users), но проверялось и на FireBird (пробовалась, среди прочего, и embeded версия FireBird в привязке к php.exe)

    сам по себе Apache работает (поэтому первая ссылка не подошла)... а не работает именно связка php_64bit+interbase