Включение OpenSSL в XAMPP
Я провел три часа, но ничего не нашел; Я не могу подключиться к серверу с поддержкой SSL. Я хочу перечислить, что я сделал:
Сначала проверил, что мой каталог расширений PHP был в порядке; расширения не было, php_openssl.dll
Затем я открыл свой файл php.ini, но не увидел ни одной строки extension = php_openssl.dll, чтобы раскомментировать.
Кроме того, я искал в Google и увидел людей с такой же проблемой.
http://www.apachefriends.org/f/viewtopic.php?p=162623
Тем не менее, у меня также есть
OPENSSL_CONF C:/xampp/apache/bin/openssl.cnf
...
openssl
OpenSSL support enabled
OpenSSL Library Version OpenSSL 0.9.8l 5 Nov 2009
OpenSSL Header Version OpenSSL 0.9.8l 5 Nov 2009
нет строк. Что я должен делать? Пожалуйста, поделитесь своими предложениями.
Ответы
Ответ 1
Да, вы должны открыть php.ini
и удалить точку с запятой:
;extension=php_openssl.dll
Если у вас нет этой строки, убедитесь, что у вас есть файл (на моем ПК включен D:\xampp\php\ext
) и добавьте его в php.ini
в разделе "Динамические расширения":
extension=php_openssl.dll
Ответ 2
[PHP_OPENSSL]
extension=php_openssl.dll
Это ответ.
Ответ 3
Я использую xampp. Раньше я пробовал файл примера "test_smtp_gmail_basic.php" в phpMailer (вы можете скачать phpMailer здесь: https://github.com/Synchro/PHPMailer), но я получил следующую ошибку
Ошибка Mailer: Не удалось выполнить следующий адрес: [email protected]
После того как я прокомментировал ; extension=php_openssl.dll
в php.ini, он теперь работает.
Ответ 4
В xampp, если "extension = php_openssl.dll" отсутствует в вашем файле php.ini, добавьте его в раздел "Расширения Windows" вашего файла php.ini
и перезапустите апач.
Это работает для меня.
Ответ 5
Вам нужно будет отредактировать свой php.ini. Это 4 простых шага.
Найдите файл php.ini.
$inipath = php_ini_loaded_file();
Включить openssl в файле:
extension=php_openssl.dll
Включить allow_url_fopen на
allow_url_fopen = On
Перезапустите apache, и все готово!
Ответ 6
Все изменилось для PHP> 7. Это то, что я должен был сделать для PHP 7.2.
Шаг: 1: раскомментировать extension=openssl
Шаг: 2: Раскомментировать extension_dir = "ext"
Шаг 3: Перезапустите xampp.
Готово.
Пояснение: (с php.ini)
Если вы хотите, чтобы расширение загружалось автоматически, используйте следующий синтаксис:
extension=modulename
Примечание: Синтаксис, использованный в предыдущих версиях PHP (extension=<ext>.so
и extension='php_<ext>.dll
), поддерживается по устаревшим причинам и может быть устаревшим в будущей основной версии PHP. Поэтому, когда это возможно, перейдите на новый (extension=<ext>
) синтаксис.
Специальное примечание: Обязательно правильно установите директиву extension_dir
.
Ответ 7
ШАГ 1: На ваш php.ini
комментарий из ;extension=php_openssl.dll
ШАГ 2: Скопируйте libeay32.dll и ssleay32.dll из корневой папки PHP и вставьте в нее папку Apache/bin
ШАГ 3: Перезапустите Apache
Ответ 8
Я предполагаю, что этот вопрос для тех, кто использует систему на основе Windows.
Убедившись, что расширение extension = php_openssl.dll в вашем файле php.ini не имеет точки с запятой.
Затем убедитесь, что вы добавили C: /xampp/apache/bin в путь к своей среде, чтобы использовать openssl, не перемещая командную строку в этот каталог C: /xampp/apache/bin