Расширение PHP включено, но не загружено в Apache

По некоторым причинам мои расширения php включены, но не загружены моим сервером Apache 2.4. Я пропускаю расширения mbstring и fileinfo. Я выполнил установку вручную, и я хочу сохранить ее, в основном, в учебных целях.

Когда я говорю включен, я имею в виду, что когда я бегу php -m в cmd расширения находятся в списке

Тем не менее, когда я бегу <?php phpinfo(); с моего сервера этих расширений нет в списке.

В моем файле php.ini я настроил только следующие элементы (связанные с расширениями):

extension_dir = "ext"
extension=mbstring (uncommented the line)
extension=fileinfo (uncommented the line)

Я добавил следующее в httpd.conf:

# PHP5 module
LoadModule php7_module "C:/php/php7apache2_4.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php/"

И в phpinfo(), я вижу, что загружен только один php.ini, тот из C:/php

Почему мои расширения не будут доступны на моем сервере Apache? Нужно ли как-то вручную загружать / включать их в Apache?

* Версии: Apache 2.4.39, PHP 7.3.4

0 ответов

У меня та же проблема с моими собственными расширениями, выходящими за рамки обычного типа конфигурации Apache PHP. Я обнаружил, что если я не использую Apache в качестве службы и открываю командную консоль для запуска Apache, она загружается. Это единственный способ загрузки. Не используйте пакетный процесс или сервис.

Для Windows

  1. нажмите Winkey+R,
  2. тип cmd,
  3. нажмите Ctrl+Shift+Enter и
  4. нажмите "да".
  5. Затем перейдите в каталог Apache/bin и введите httpd,

Я думаю, что если вы сделаете что-то за пределами нормы, пользовательские расширения не будут работать, если вы не создадите свои собственные исполняемые файлы.

Другие вопросы по тегам