PHP для меня отлично загружает расширения только при вызове из CLI, но не когда я загружаю страницы через Apache.
Например, это результат php -m
:
[PHP Modules]
bcmath
calendar
Core
ctype
curl
date
dom
filter
hash
iconv
json
libxml
mysqlnd
openssl
pcre
PDO
Phar
readline
Reflection
session
SimpleXML
SPL
standard
tokenizer
xml
xmlreader
xmlwriter
zip
zlib
Однако при запуске через Apache:
1. В phpinfo()
, Поддержка OpenSSL отображается как «отключена».
2. extension_loaded("curl")
является false
3. get_loaded_extensions()
не включает curl
или OpenSSL
.
4. Попытка использовать любую из функций расширений не удалась.
Вот var_dump(get_loaded_extensions());
при запуске через Apache:
array(28) {
[0]=>
string(4) "Core"
[1]=>
string(6) "bcmath"
[2]=>
string(8) "calendar"
[3]=>
string(5) "ctype"
[4]=>
string(4) "date"
[5]=>
string(6) "filter"
[6]=>
string(4) "hash"
[7]=>
string(5) "iconv"
[8]=>
string(4) "json"
[9]=>
string(3) "SPL"
[10]=>
string(4) "pcre"
[11]=>
string(8) "readline"
[12]=>
string(10) "Reflection"
[13]=>
string(7) "session"
[14]=>
string(8) "standard"
[15]=>
string(7) "mysqlnd"
[16]=>
string(9) "tokenizer"
[17]=>
string(3) "zip"
[18]=>
string(4) "zlib"
[19]=>
string(6) "libxml"
[20]=>
string(3) "dom"
[21]=>
string(3) "PDO"
[22]=>
string(4) "Phar"
[23]=>
string(9) "SimpleXML"
[24]=>
string(3) "xml"
[25]=>
string(9) "xmlreader"
[26]=>
string(9) "xmlwriter"
[27]=>
string(14) "apache2handler"
}
ОПЕРАЦИОННЫЕ СИСТЕМЫ: Windows 10 1809, up to date.
php -v
:
PHP 7.4.5 (cli) (built: Apr 14 2020 16:17:34) ( ZTS Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
httpd
: Apache 2.4.43 Win64 из https://www.apachelounge.com/
PHP и Apache взаимодействуют через это в httpd.conf
(mod_php):
LoadModule php7_module "C:/<path_to_PHP>/PHP7/php7apache2_4.dll"
На этом компьютере установлена только одна установка Apache + PHP.
Что я пробовал:
php -m
(как должны). httpd
. display_startup_errors=on
а затем проверка журналов. В журналах ошибок Apache и PHP нет соответствующей информации. php.exe -v
, "Безопасность потоков" отображается как включенная в phpinfo()
через Apache. Пожалуйста помоги. Мне нужен этот веб-сервер в рабочем состоянии, и это сводит меня с ума.
Мне удалось решить проблему, заменив двоичные файлы Apache Lounge на файлы из Apache Haus.
Я просто заменил старый Apache24
папка с новой, но сохранила старую conf
папка. Никаких других изменений вносить не нужно.