Поддержка OpenSSL отключена в Apache 2.4 / PHP 7.4.4 - PullRequest
0 голосов
/ 05 апреля 2020

Я пытаюсь настроить Apache MariaDB PHP вручную, но у меня возникают некоторые проблемы с функцией openssl. Вот шаги, которые я предпринял для настройки Apache 2.4 и PHP 7.4.4:

I. Apache httpd Установка и настройка

  1. Загрузка и извлечение httpd-2.4.43-win64-VS16.zip из apachelounge в папку "D: \ Programs-64Bit \ Apache24"
  2. Установите ServerRoot в httpd.conf с полным путем
  3. Установите ServerName на localhost:80
  4. Определите WWWROOT с нужным путем к документу Root в httpd. conf (т.е. Define WWWROOT "E:/Programs/WWW")
  5. Установите значения DocumentRoot и <Directory> равными "${WWWROOT}"

II. Объединение PHP с apache

  1. Загрузка и извлечение Thread Thread * php -7.4.4-Win32-vc15-x64.zip в "D: \ Programs- 64Bit \ PHP \ PHP7 .4.4-64Bit "
  2. Добавьте следующие строки в конце httpd.conf:
Define PHPROOT "D:/Programs-64Bit/PHP/PHP7.4.4-64Bit"
LoadModule php7_module "${PHPROOT}/php7apache2_4.dll"
AddType application/x-httpd-php .php
PHPIniDir "${PHPROOT}"

LoadFile "${PHPROOT}/libcrypto-1_1-x64.dll"
LoadFile "${PHPROOT}/libssl-1_1-x64.dll"
LoadFile "${PHPROOT}/libssh2.dll"
LoadFile "${PHPROOT}/nghttp2.dll"
LoadFile "${PHPROOT}/php7ts.dll"
Скопируйте и переименуйте php .ini-development в тот же каталог php root, что и php .ini , установите extension_dir и включите каждое расширение, кроме oci8_12 c, pdo_firebird, pdo_oci и snmp

III. Тестирование PHP с Apache

  1. Создайте файл php (индекс. php) со следующим кодом:
<?php 
     phpinfo();
?>
Запустите httpd.exe

Вот что он говорит мне об openssl:

image showing the phar section of phpinfo. openssl support is disabled

в соответствии с " Поддержка OpenSSL отключена в Apache / PHP для Windows "в StackOverflow и последний комментарий на странице php. net" PHP Manual> Справочник функций> Расширения криптографии> OpenSSL> Установка / настройка"должна работать. что я делаю не так?

Ответы [ 2 ]

0 голосов
/ 06 апреля 2020

Это на самом деле легко решить. после проверки, был ли openssl включен в PHP в командной строке с командой php index.php, где index. php - файл, созданный в исходном сообщении. Видно, что openssl действительно включен.

Чтобы включить его на Apache2.4, необходимо раскомментировать LoadModule ssl_module modules/mod_ssl.so в httpd.conf.

Секция phar будет выглядеть так:

image showing the Phar section of phpinfo where openssl support is enabled

И появится секция openssl:

image showing the openssl section that is only visible when openssl is enabled

0 голосов
/ 05 апреля 2020

Если вы хотите включить OpenSSL suport в Phar .
Просто раскомментируйте следующую строку.

// php.ini
extension=openssl
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...