Composer를 설치하기 위해 PHP의 openssl 확장을 활성화하는 방법은 무엇입니까?


113

WAMP 설정에서 Laravel을 설치하려고합니다. WAMP에서 이미 수행 한 openssl 을 활성화하지 않았다는 경고 메시지가 나타납니다 .

다음은 메시지의 스크린 샷입니다.

여기에 이미지 설명 입력


1
환경 변수에서 PHP의 경로를 확인하십시오. %PATH%Composer가 WampServer 대신 다른 위치에서 PHP를 찾고있을 수 있습니다.
루벤스 Mariuzzo

나는 같은 문제가 있었다. 나는 wamp 아이콘에서 php.ini를 편집하고있었습니다. 그러나 수동으로 수행하고 서버를 다시 시작하면 작동합니다.
themhz

답변:


121

WAMP와 Composer가 다른 PHP 설치를 사용하고있을 수 있습니다. Composer는 PATH환경 변수에 설정된 PHP를 사용합니다 .

openssl 확장 을 활성화하여 Composer 를 설치하려면 먼저 PHP 설치 위치를 확인해야합니다.

  1. 명령 프롬프트를 열고 echo %PATH%다음을 입력 한 다음 PHP 설치 위치를 확인하십시오.
  2. 해당 위치로 이동하여라는 파일을 편집하십시오 php.ini.
  3. extension=php_openssl.dll처음에 세미콜론을 제거 하여 줄의 주석 처리 를 제거하십시오.

이제 Composer를 설치하는 것이 좋습니다.


2
XAMPP 설치에이 확장이없는 경우가 있습니다. 방금 php.ini에 (extension = php_openssl.dll)을 추가했으며 laravel 종속성을 다운로드하는 중입니다.
Adrian P.

8
입력 echo %PATH%하면 다음 C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\Sysem32\WindowsPowerShell\v1.0\;C:\Program files\Microsoft\Web Platform Installer\;C:\Program Files\MySQL\MySQL Server 5.5\bin과 같은 메시지가 나타납니다. .. 해당 디렉토리에 PHP가 설치되어 있지 않습니다. 지금 어떻게해야합니까?
abbood

19
wamp는이 php.ini를 사용하고 있습니다 : c : \ wamp \ bin \ apache \ Apache2.4.4 \ bin \ php.ini 그러나 composer는 CLI에서 PHP를 사용하고 있으므로이 파일을 읽습니다 : c : \ wamp \ bin \ php \ php5.4.12 \ php.ini (따라서 openssl을 활성화해야 함)
Enrique

2
나는 xampp, Composer를 사용하여 ';'를 제거한 후에도 동일한 open SSL 누락 오류를 표시합니다. php.ini의 openssl 확장자.
Shashikumar Misal 2014 년

30
또한 라인의 주석을 해제했다 extension_dir = "ext"년을 php.ini,하지만 난 대신 WAMP의 일반 PHP 설치를 사용하고 있습니다.
David Harkness

62

내 문제를 다른 방식으로 해결했습니다. 문제는 wamp의 GUI가 오해의 소지가 있다는 것입니다. 그것은 제가 php_openssl활성화 했다고 주장했고 .. php.ini동일한 GUI를 클릭하면 실제로 extension=php_openssl.dll주석이없는 것으로 나타났습니다 ..

내가 OP의 composer의 동일한 설치 프로그램 버전을 사용하고 있는지 확실하지 않지만 실제로 처음에 php.exe작성기를 적용 하려는 것을 지정하도록 요청합니다 (기본적으로 아무도 작성기를 적용하려고하지 않음을 보장합니다). OP에서 발생한 것과 같은 잘못된 PHP 실행 파일) ..

내가이 문제를 해결 한 방법은 wamp 패키지 내에서 PHP를 설치 하는 것이 었습니다 . C:\wamp\bin\php\php5.4.12그리고 php.in거기를 살펴보면 .. 내가 그것을 열었을 때 그 줄 extension=php_openssl.dll이 실제로 주석 처리되었다는 사실 에 충격을 받았습니다 ! 나는 그것을 주석 해제했고 그것은 잘 작동했습니다.

여기에 이미지 설명 입력


이 답변을 확인한 후 감사합니다 wamp가 5.5.12를 사용하고 있음을 알았지 만 php.exe에 대해 5.4 디렉토리를 선택했습니다
Afnan Bashir

파일 libeay32.dll또는 liblibcrypto-*.dll상주 하는 경로는 무엇 입니까? php.net/manual/de/openssl.installation.php
Bernhard Döbler

53

나는 똑같은 문제가 있었고 여기에 내가 찾은 해결책은 php.ini에서 몇 가지 변경이 필요합니다.

  1. extension_dir = "ext"
  2. extension = php_openssl.dll

여기에있는 모든 사람들은 openssl 확장을 활성화한다고 말하지만 Windows에서는 확장 디렉토리도 활성화해야합니다.


3
남자는 당신이 언급 한 유일한 사람입니다 extension_dir, 당신은 훌륭합니다!
giannis christofakis

이것은 나를 위해 일했습니다. 이 튜토리얼 처럼 PHP를 직접 다운로드 했습니다 .
강탈

26

WAMP 서버의 경우 "Enrique"가 제공 한 의견으로 문제가 해결되었습니다.

wamp는이 php.ini를 사용하고 있습니다 :

c:\wamp\bin\apache\Apache2.4.4\bin\php.ini

그러나 composer는 CLI에서 PHP를 사용하므로 다음 파일을 읽고 있습니다.

c:\wamp\bin\php\php5.4.12\php.ini (so you need to enable openssl there)

작곡가의 경우 확장 기능을 활성화해야합니다.

c:\wamp\bin\php\php5.4.12\php.ini

변화:

;extension=php_openssl.dll 

extension=php_openssl.dll

MAMP의 경우 php.ini 파일을 C : \ MAMP \ conf \ phpx.xx에서 C : \ MAMP \ bin \ php \ phpx.xx (\ conf \ ....에서 \ bin \ ..로 복사해야합니다. .)
Mike

15

WAMP 스택 중 하나 없이 Windows에서이 작업을 수행하는 경우이 작업을 수행 하는 방법은 다음과 같습니다.

  1. Windows 용 PHP 설치를 다운로드합니다 . 일반적으로 스레드로부터 안전하지 않은 설치를 원할 것입니다. 32 비트 또는 64 비트 빌드를 사용할 수 있습니다.
  2. 어딘가에 zip 파일을 추출하십시오. 나는 제안 할 것이다 C:\php. Composer의 설치 프로그램이 추가 메시지없이 발견했습니다.
  3. Windows 용 PHP의 최신 버전은 제공되지 않습니다 php.ini기본적으로 . 대신 아래와 같이 두 개의 파일이 표시됩니다. 하나의 이름을로 바꾸 php.ini거나로 복사하십시오 php.ini.
    • php.ini-development
    • php.ini-production
  4. 열려있는 php.ini파일을이 행에서 세미콜론을 제거 (당신은뿐만 아니라 주석을 다른 것들로 할 수도 있지만,이 라인은 작곡가를위한 하나의 필요)

    ;extension=php_openssl.dll

그게 당신이해야 할 전부입니다. Composer 설치 프로그램은 여기에서 필요한 모든 작업을 수행해야합니다.


2
이것은 올바른 솔루션 (WAMP가 아닌 경우) 설정이있는 유일한 온라인 장소입니다. 감사!
adamdehaven

11

두 파일 (php 및 apache)에서 "extension = php_openssl.dll"을 활성화해야합니다. 내 PC 파일 경로는 다음과 같습니다.

  1. C : \ wamp \ bin \ php \ php5.3.13 \ php.ini
  2. C : \ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini

8

이것은 오래된 질문이지만 PHP7과 같은 문제가 있었고 결국 해결책은 매우 간단했습니다. php.ini다른 답변에 따라 줄의 주석 처리를 제거하는 것만으로는 충분하지 않았습니다. 다음과 같이 변경해야했습니다.

;extension=php_openssl.dll

에:

extension=ext/php_openssl.dll

ext접두사에 유의하십시오 . dll이 이미 존재하지만 하위 폴더에 있습니다. 구성을 변경 한 후 작곡가 설치 프로그램이 만족 스러웠습니다.


7

openssl 확장을 활성화해야합니다.

C:\wamp\bin\php\php5.4.12\php.ini 

그것은 아이콘과 같은 드라이버-메모장과 함께 "구성 설정"을 가진 유형이있는 php 구성 파일입니다.

  1. 메모장이나 편집기를 사용하여 엽니 다.
  2. openssl "your ctrl + F"를 검색하면됩니다.
  3. openssl 확장 앞에 세미콜론이 있습니다.

    ;extension=php_openssl.dll

    세미콜론을 제거하면

    extension=php_openssl.dll
  4. 파일을 저장하고 WAMP 서버를 다시 시작하십시오. 작동하는 응용 프로그램을 다시 설치하십시오.

6

두 개의 php.ini파일이 있는데 하나는 개발 용이고 다른 하나는 프로덕션 용입니다. 그것들을 남겨 두십시오, php.ini아이콘과 같은 기어가있는 구성 설정을위한 다른 파일이 있습니다.


또는 내 기본값이 없습니다. prod / dev 파일을 복사 / 붙여 넣기하고 이름을으로 변경 php.ini한 다음 여기에서 다른 사람들이 제안한 내용을 편집하십시오.
브린 베이트먼

3

"올바른"파일 (모든 php.ini)을 편집 한 후. 나는 여전히 문제가 있었다. 내 솔루션 은 다음과 같습니다.

  1. 시스템 변수 추가 : OPENSSL_CONF

    OPENSSL_CONF의 값은 현재 PHP 버전의 openssl.cnf 파일이어야합니다.

나를 위해 그것은 :

  • C : \ wamp \ bin \ php \ php5.6.12 \ extras \ ssl \ openssl.cnf

-> WAMP 다시 시작-> 이제 작동합니다.

출처 : http://php.net/manual/en/openssl.installation.php


2

나는 같은 문제에 직면했지만 php.ini와 php.exe에 대해 lokking했을 때 C : \ UwAmp \ bin에 php.ini가있을 때 C : \ UwAmp \ bin \ php \ php-5.4.15에서 php.exe를 찾았습니다. \ apache. C : \ UwAmp \ bin \ php \ php-5.4.15에 php.ini를 복사하고 extension = php_openssl.dll 줄의 주석 처리를 제거하면 수정되었습니다.


2

WAMP 서버를 사용하고 있습니다. 실제로 그 파일은 openssl이 열린 것으로 나타났습니다. 그러나 수동으로 폴더로 이동하여 php.ini. 그런 다음 openssl을 열지 않았 음을 발견했습니다. 주석 처리를 제거하고 WAMP를 다시 시작한 후에 작동했습니다.


2

C : \ wamp \ bin \ php \ php5.3.13

다음과 같은 줄을 찾습니다.

;extension=php_openssl.dll

줄 앞의 세미콜론을 제거하십시오. WAMP 서버 서비스를 다시 시작합니다 (아이콘 트레이를 클릭> '모든 서비스 다시 시작').


1

여전히 문제를 해결할 수 없다면 이것을보십시오. 이것은 당신이 찾고있는 해결책 일 수 있습니다

C : \ wamp \ bin \ php \ php xyz 폴더에는 여러 php.ini 파일이 있습니다. 프로덕션, 개발 및 기타 php.ini 파일을 찾을 수 있습니다. 프로덕션 및 개발 파일을 편집 할 필요가 없습니다. 아래 이미지와 정확히 동일한 파일을 찾으십시오. (찾을 수 있습니다. 검색 창에 php.ini를 입력하고 검색하십시오). 파일을 열고 제거하십시오. extension = php_openssl.dll에서. 파일을 저장하고 닫습니다. Wampp 서버의 모든 서비스를 다시 시작하십시오. 작곡가를 다시 설치하십시오.

그게 다야.

여기에 이미지 설명 입력


1

Wamp는 C : \ wamp \ bin \ apache \ Apache2.4.4 \ bin \ php.ini에있는 다른 php.ini와 함께 작동합니다. 따라서 C : \ wamp \ bin \ php \ php5.4.12 \ php.ini에있는 올바른 파일을 수동으로 찾아야합니다. extension = php_openssl.dll 줄의 주석 처리를 제거하고 Composer를 다시 설치해보십시오.


1

저와 같은 문제를 겪고있는 사람들을 위해. 위의 모든 솔루션을 수행 한 후에도 여전히 작동하지 않았습니다. 나는 uWamp가 bin / apache 디렉토리에 PHP.INI 파일을 만들고 있다는 것을 알았습니다. 그래서 PHP.INI 파일을 php 설치 디렉토리, 즉 bin / php / phpXXXX 디렉토리에 복사해야했습니다. 이것은 또한 작곡가 설정에서 선택한 php.exe가있는 곳이어야합니다.

도움이 되었기를 바랍니다.


1

소스에서 컴파일 한 경우 extension=php_openssl.dllphp.ini 파일에 추가 하면 작동하지 않을 수 있습니다 .

이 문제를 해결하려면 명령 프롬프트를 열고 php -i. 첫 번째 줄로 스크롤하면 php.ini 파일과 관련된 가장 최근의 오류가 표시됩니다.

문제를 해결하려면 php_openssl.dll파일을 찾으십시오. 저에게는 컴파일 출력과 동일한 디렉토리에있었습니다. C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS 따라서 확장자가있는 디렉토리를 다음 위치에 추가하십시오 php.ini.

extension_dir = "C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS"

바라건대 오류가 사라질 것입니다.


0

xampp를 사용하는 경우 설치를 시작할 때 사용할 명령 줄 PHP를 선택한 위치로 돌아가서 xampp 폴더가 포함 된 경로를 선택합니다. 그 후 설치 프로그램에서 중복 된 'extension = php_openssl.dll '은 php ini에있는 하나의 ssl 파일에'; '로 주석을 달면 설치가 원활하게 실행됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.