Расширение openssl требуется для защиты SSL TLS

Расширение openssl требуется для защиты SSL / TLS.

Я пытаюсь запустить эту команду, но она выдала ошибку.

Я попытался добавить extension = php_openssl.dll в php.ini, но ошибка все равно возникла

9 ответов

У меня возникла такая же ошибка. Я исправил это, отключив TLS для Composer, это небезопасно , но я взял на себя риск на своей машине разработки .

И перезапустите свой Composer. У меня это работает!

Но это небезопасно и не рекомендуется для вашего сервера . На официальном сайте сказано:

Если установлено значение true, все URL-адреса HTTPS будут проверяться с использованием HTTP, и шифрование на уровне сети не выполняется. Включение этого параметра представляет собой угрозу безопасности и НЕ рекомендуется. Лучше всего включить расширение php_openssl в php.ini.

Если вы не хотите включать небезопасный уровень на вашем компьютере / сервере, настройте свой php, чтобы включить openssl, и он также работает . Убедитесь, что расширение PHP Openssl установлено, и включите его в файле php.ini.

Чтобы включить OpenSSL, добавьте или найдите и раскомментируйте эту строку в файле php.ini:

Linux / OSx:

Windows:

И при необходимости перезагрузите свой php-fpm / веб-сервер!

Для меня в Windows 10 ничего из этого не сработало . Я изменил свой локальный сервер с WAMP на Laragon и мне пришлось добавить новый путь к php.ini в переменных среды в разделе:

Панель управления -> Расширенные настройки системы -> Переменные среды -> Путь (двойной щелчок) -> Обзор . затем перейдите к php.ini и нажмите ОК.

После этого потребовалась перезагрузка, и теперь композитор работает как шарм!

Я просто добавляю это, потому что это сработало для меня, я устанавливаю композитор с активированной опцией разработчика (просто установите флажок в установщике)

Я думаю, эта проблема может возникнуть, когда вы добавляете новую версию php на свой wamp-сервер. Если вы это сделаете, вы должны проверить, настроена ли переменная extension_dir на «env».

Затем проверьте, существует ли php_openssl.dll в вашей папке phpx.x / ext . Если нет php_openssl.dll, вам нужно скачать его здесь: http://www.telecharger-dll.fr/dll-php_openssl.dll. html

Если он по-прежнему не работает, проверьте, использует ли ваш сервер apache хороший файл php.ini, выполнив следующую команду cmd:

Если загруженный файл конфигурации возвращает (none) , вы должны проверить, что ваш файл apache / apache2.4.41 / conf / httpd.conf настроен с использованием правильного phpIniDir и правильного модуля.

Это должно быть примерно так:

Затем перезапустите apache и проверьте «apache / apache2.4.41 / bin / php.ini» (который настроен выше с помощью PHPIniDir), он должен мне понравиться

enter image description here

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

Я НЕ РЕКОМЕНДУЮ подход composer config -g — disable-tls true .

Кстати, обратный способ — composer config -g — disable-tls false .

Эта проблема возникает из-за openssl и директора расширений, поэтому раскомментируйте под расширениями в файле php.ini

Он работает на моей машине.

Чтобы включить openssl, зайдите в php.ini и включите эту строку:

Если вы не хотите включать openssl, вы можете установить, чтобы композитор не использовал openssl с помощью этой команды:

Однако это проблема безопасности.

У меня была точно такая же проблема, и я не мог найти решение, поэтому, подумав и некоторое время поискав, я решил, что мой PHP.INI, по-видимому, не ищет в правильном каталоге для моих расширений PHP, поэтому я пошел:

«Каталог, в котором находятся загружаемые расширения (модули)». И обнаружил следующее:

И просто удалил; перед «extension_dir =» ext «, обратите внимание, что это только для Windows, удалите точку с запятой перед первым extension_dir, если вы используете другую операционную систему.

Читайте также:  Форматирование флешки при установке виндовс

Понятия не имею, почему моя еще не снята, но это просто то, что нужно искать, если у вас возникли проблемы.

В соответствии с справкой композитора есть два соответствующих варианта: disable-tls и secure-http .

Потом сильно жалуется:

Но он выполняет composer selfupdate (или что-то еще).

В то время как в Linux нельзя просто «включить SSL в php.ini»; PHP должен быть скомпилирован с openSSL, настроенным как библиотека shared — чтобы иметь возможность получить к нему доступ из PHP CLI SAPI.

Попробовав все, мне, наконец, удалось разобраться с этим. Ни одно из предложенных выше решений не помогло мне. Моя система — ПК с Windows 10. Для того чтобы отсортировать это, мне пришлось изменить файл config.json , расположенный здесь C:\Users\[Your User]\AppData\Roaming\Composer\ . Там вы найдете:

Где вам нужно обновить URL-адрес репозитория упаковщика, чтобы он указывал на версию URL-адреса https.

Я знаю, что выбранное выше решение будет работать в 95% случаев, но, как я уже сказал, у меня это не сработало. Надеюсь, это кому-то поможет.

Источник

Предупреждение Composer: расширение openssl отсутствует. Как включить в WAMP

Попытка установить средство управления зависимостями Composer на Win7 / 64 + WampServer 2.2 через установщик установки, и я получаю следующее сообщение:

Расширение openssl отсутствует, что снижает безопасность и стабильность Composer. Если возможно, вы должны включить его или перекомпилировать php с —with-openssl

Итак, вот что я сделал .

  1. На моей иконке Wamp в трее нажал php > php extensions > php_openssl
  2. Это показало, что задача была выполнена, поставив галочку рядом с расширением
  3. Затем я перезапустил WampServer
  4. Затем на значке Wamp в трее я щелкнул php > php.ini и поискал openssl, чтобы убедиться, что он НЕ закомментирован). Не было.
  5. Затем я вернулся к Composer-Setup.exe и попытался снова. То же предупреждающее сообщение : «расширение openssl отсутствует»
  6. Не Имея никогда работал с OpenSSL, я не уверен , что должно быть установлено, поэтому я попытался перейти к одной из моих местных сайтов с использованием протокола HTTPS. Это не удалось.

Чего мне не хватает?

WAMP использует разные файлы php.ini в интерфейсе командной строки и для Apache. когда вы включаете php_openssl через пользовательский интерфейс WAMP, вы включаете его для Apache, а не для CLI. Вам необходимо изменить C: \ wamp \ bin \ php \ php-5.4.3 \ php.ini, чтобы включить его для CLI.

В дополнение к раскомментированию ;extension=php_openssl.dll строки, php.ini о которой говорили все остальные, вы также должны убедиться, что эта ;extension_dir = «ext» строка также раскомментирована. Чтобы раскомментировать, удалите точку с запятой в префиксе и сохраните.

Эта строка, возможно, уже не закомментирована в таких пакетах, как WAMP и XAMPP, но ее нельзя загрузить простым PHP для Windows, поэтому ее стоит проверить. Кроме того, вы должны создать php.ini файл, скопировав один из примеров, например, php.ini-development в новый файл, и затем назвать его php.ini . Затем внесите эти изменения там.

Кроме того, в будущем для установки таких инструментов, как PHP и Composer, я рекомендую использовать менеджер пакетов Chocolatey. Тогда это так же просто, как choco install composer . Конечно, вам все равно нужно отредактировать php.ini перед установкой Composer с помощью метода choco. В будущих версиях Windows инструменты управления пакетами, такие как Chocolatey, будут встроены в Windows , как apt-get и в Ubuntu. Впереди захватывающие времена для разработчиков!

В любом случае после установки Composer не забудьте перезагрузить терминал. Независимо от того, используете ли вы командную строку, Bash (устанавливается с Git) или Powershell, вам необходимо перезапустить его, прежде чем обновленные переменные среды заработают.

Читайте также:  Mods Mafia The City of Lost Heaven

У меня была такая же проблема, хотя openssl был включен. Проблема заключалась в том, что установщик Composer просматривал этот файл конфигурации:

Источник



Как включить расширение PHP openssl для установки Composer?

Я пытаюсь установить Laravel в настройке WAMP. Я получаю предупреждение о том, что не разрешаю openssl, который я уже сделал в WAMP.

Вот скриншот сообщения.

enter image description here

Возможно, что WAMP и Composer используют разные установки PHP. Composer будет использовать набор PHP в переменной среды PATH .

Если вы хотите включить расширение openssl для установки Composer, сначала вам нужно проверить расположение установки PHP.

  • Откройте командную строку, введите: echo %PATH% , затем проверьте местоположение вашей установки PHP.
  • Перейдите в это место и отредактируйте файл с именем: php.ini .
  • Раскомментируйте строку extension=php_openssl.dll , удалив точку с запятой в начале.

Теперь вы можете установить Composer.

Я решил свою проблему по-другому. Проблема заключается в том, что графический интерфейс wamp вводит в заблуждение: он утверждал, что я включил php_openssl .. и если бы я нажал на php.ini на том же графическом интерфейсе.. он фактически показал, что extension=php_openssl.dll был раскован.

Я не уверен, что я использую одну и ту же версию установщика для компоновщика OP, но на самом деле вам сначала нужно указать php.exe , на который вы хотите применить композитор (что в основном гарантирует, что нет один пытается применить композитор к неправильному исполняемому файлу php, как то, что произошло с OP).

Как я решил это, я пошел на установку php в пакете wamp: C:\wamp\bin\php\php5.4.12 и посмотрел php.in там.. когда я открыл его, я был потрясен тем, что строка extension=php_openssl.dll была фактически прокомментирована! Я расколол его, и он работал нормально.

У меня была та же проблема, и вот решение, которое я нашел, на вашем php.ini вам нужно сделать некоторые изменения:

  • extension_dir = «ext»
  • extension = php_openssl.dll

Каждый из них говорит об активном расширении openssl, но в окнах вам также необходимо активировать расширение.

Для сервера WAMP комментарий, предоставленный “Энрике”, решил мою проблему.

wamp использует этот php.ini:

Но композитор использует PHP из CLI и, следовательно, читает этот файл:

Для композитора вам нужно включить расширение в

Вам нужно включить “extension = php_openssl.dll” в обоих файлах (php и apache). мой путь к файлам pc:

  • C:\WAMP\Bin\PHP\php5.3.13\php.ini
  • C:\WAMP\Bin\Apache\apache2.2.22\Bin\php.ini

Если вы делаете это в Windows без одного из стеков WAMP, вот как это сделать

  • Загрузите установку PHP для Windows. Как правило, вам нужна безопасная установка без потоковой передачи. Вы можете использовать 32-битные или 64-битные сборки
  • Извлеките zip файл где-нибудь. Я бы предложил C:\php . Установщик композитора нашел его там без каких-либо дополнительных подсказок
  • Последние версии PHP для Windows по умолчанию не имеют php.ini . Вместо этого вы увидите два файла, как указано ниже. Переименуйте его на php.ini или скопируйте в php.ini .
    • php.ini-разработка
    • php.ini производство

    Откройте файл php.ini и удалите точку с запятой из этой строки (вы можете также раскомментировать другие вещи, но эта строка является единственной необходимой для Composer)

    Это должно быть все, что вам нужно. Установщик Composer должен делать все, что вам нужно отсюда.

    вам нужно включить расширение openssl в

    то есть файл конфигурации php, который имеет его тип, имеет “настройки конфигурации” с иконкой драйвера-значка.

    • открыть его либо с помощью блокнота, либо с помощью любого редактора,
    • поиск для openssl “ваш ctrl + F” будет делать.

    существует точка с запятой перед расширением openssl

    удалите полуточку, и у вас будет

    Существует два файла php.ini , один для разработки и один для производства. Оставьте их, есть еще один файл php.ini для настроек конфигурации чуть выше них с помощью шестерки, например, редактирования значков.

    После редактирования “правильных” файлов (все php.ini). у меня все еще была проблема.
    Моим решением было:

    Добавление системной переменной: OPENSSL_CONF

    значение OPENSSL_CONF должно быть файлом openssl.cnf вашей текущей версии php.

    для меня это было:

    • C:\WAMP\Bin\PHP\php5.6.12\Extras\SSL\openssl.cnf

    – > Перезапустить WAMP
    – > должен работать сейчас

    Я столкнулся с той же проблемой, но когда я был lokking для php.ini и php.exe, я нашел php.exe в C:\UwAmp\bin\php\php-5.4.15, когда php.ini в C:\UwAmp\Bin\апач.
    Я просто копирую php.ini в C:\UwAmp\bin\php\php-5.4.15 и раскомментирую расширение строки = php_openssl.dll, и оно исправлено.

    Я использую сервер WAMP.
    Фактически его файлы показали, что opensl открывается.
    Но вручную я пошел в папку и отредактировал php.ini .
    Затем я обнаружил, что он не открыл openssl.I раскомментировал его, и он работал после перезапуска WAMP.

    Перейдите к строке, которая гласит:

    и удалите точку с запятой перед строкой. Перезапустите службы сервера WAMP (щелкните в панели значков > “Перезапустить все службы”

    Это старый вопрос, но у меня была такая же проблема (с PHP7), и решение было, в конце концов, довольно простым. Разоблачить строку в php.ini в соответствии с другими ответами было недостаточно. Мне нужно было изменить его:

    Обратите внимание на префикс ext . DLL уже существовала, но находилась в подпапке. После изменения конфигурации установщик композитора был счастлив.

    Если вы все еще не можете решить свою проблему, посмотрите на это. Это может быть решение, которое вы ищете

    Источник

    Установка PHP и модулей на Ubuntu/Debian

    В Debian и Ubuntu есть несколько вариантов работы php: как модуль apache и как php-fpm. Первый вариант удобен тем, кому придется использовать не только сам PHP, но и возможности Apache, такие как .htaccess. Второй же вариат удобен например для Yii или Laravel.

    Установка PHP 5 как модуля Apache:

    Установка PHP 7 как модуля Apache:

    Установка PHP 5 как PHP-FPM:

    Установка PHP 7 как PHP-FPM

    Модули

    В Debian и Ubuntu зачастую установка модулей PHP не требует каких-то сложных манипуляций. Для того, чтобы посмотреть, что Вы можете поставить прямо сейчас, нужно сделать:

    Давайте для примера установим GD для работы с изображениями:

    Либо php-fpm, смотря, что используете Вы:

    Чтобы посмотреть список модулей php, который прямо сейчас подключен, можно запустить:

    Nginx, Php-Fpm и что это вообще?

    Что такое php-fpm и зачем он нужен более-менее посещаемым проектам? Какие неприятности несет в себе переход с apache на fpm? Какие проблемы решает реально, а какие — надуманно?

    Почему timeout для curl в php необходим

    Использование cURL в PHP имеет свою не очень приятную особенность — вечная блокировка процесса

    Угадайте самый медленный фреймворк. И это не Laravel

    Есть распространенное мнение, что Laravel почти самый медленный фреймворк, что даже его название нужно читать медленно и только одним пользователем на 1 ядро CPU. Но к счастью, это не так

    Curl в PHP

    Curl — это библиотека для работы с URL. Она интегрирована во множество языков, в том числе и в PHP.

    Сессии в PHP — часть первая для Чайников

    Вводная статья о том, как использовать сессии в PHP

    IoT Highload: особенности и подводные камни

    Особенности серверных приложений, работающих с сетью IoT-устройств на практике и в теории

    Источник

Adblock
detector