【发布时间】:2020-07-17 14:50:52
【问题描述】:
我正在尝试手动设置 Apache MariaDB PHP,但我遇到了 openssl 功能的一些问题。 以下是我设置 Apache 2.4 和 PHP 7.4.4 的步骤:
我。 Apache httpd安装配置
- 从 apachelounge 下载 httpd-2.4.43-win64-VS16.zip 并将其提取到“D:\Programs-64Bit\Apache24”
- 在 httpd.conf 中使用完整路径设置
ServerRoot - 将
ServerName设置为localhost:80 - 在 httpd.conf 中使用所需的 DocumentRoot 路径定义
WWWROOT(即Define WWWROOT "E:/Programs/WWW") - 将
DocumentRoot和<Directory>值设置为"${WWWROOT}"
二。 PHP与apache结合
- 下载并提取线程安全php-7.4.4-Win32-vc15-x64.zip 到“D:\Programs-64Bit\PHP\PHP7.4.4-64Bit”
- 在 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.ini 相同的 php 根目录
- 设置 extension_dir 并启用除 oci8_12c、pdo_firebird、pdo_oci 和 snmp 之外的每个扩展
三。用 Apache 测试 PHP
- 使用以下代码创建一个php文件(index.php):
<?php phpinfo(); ?>
- 运行httpd.exe
这就是它告诉我关于 openssl 的内容:
根据 StackOverflow 上的“OpenSSL support disabled in Apache/PHP on Windows”和 php.net 页面“PHP Manual > Function Reference > Cryptography Extensions > OpenSSL > Installing/Configuring”中的最后一条评论,它应该可以工作。我做错了什么?
【问题讨论】: