web-dev-qa-db-ja.com

PHPのopenssl拡張機能を有効にしてComposerをインストールする方法

WAMPセットアップでLaravelをインストールしようとしています。有効にしないという警告メッセージが表示されますopensslこれはWAMPで既に行っています。

これがメッセージのスクリーンショットです。

enter image description here

111
FirmView

WAMPとComposerが異なるPHPインストールを使用している可能性があります。 ComposerはPATH環境変数に設定されているPHPを使用します。

openssl拡張を有効にしてインストールする場合Composer、まず最初にPHPインストールの場所を確認する必要があります。

  1. コマンドプロンプトを開き、「echo %PATH%」と入力して、PHPのインストール場所を確認します。
  2. その場所に行き、php.iniという名前のファイルを編集します。
  3. 先頭のセミコロンを削除して、行extension=php_openssl.dllのコメントを外します。

これでComposerをインストールできました。

115
Rubens Mariuzzo

私は自分の問題を別の方法で解決しました。問題は、wampのGUIが誤解を招く可能性があるということです。私はphp_opensslを有効にしていたと主張しました。同じGUIでphp.iniをクリックした場合、実際にはextension=php_openssl.dllはコメント解除されました。

私はOPの作曲家の同じインストーラー版を使っているかどうかわからないが、それは実際にあなたが作曲家を適用したいphp.exeを指定するようにあなたに頼みますOP)で起こったこととして間違ったphp実行可能ファイルに。

私がこれを解決した方法は、wampパッケージ内のphp:C:\wamp\bin\php\php5.4.12のインストールに入り、そこでphp.inを見ることでした。それを開くと、extension=php_openssl.dllという行が実際にコメントされていてショックを受けました!私はそれをコメント解除しました、そしてそれはちょうどうまくいった。

enter image description here

61
abbood

私は同じ問題を抱えていました、そしてここで私が見つけた解決策、あなたのphp.iniあなたはいくつかの変更を行う必要があります:

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

ここでは誰もがopensslエクステンションをアクティブにしていますが、windowsではエクステンションdirもアクティブにする必要があります。

51

WAMPサーバーの場合、 "Enrique"のコメントで私の問題は解決しました。

wampはこれを使っていますphp.ini

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

しかし、作曲家は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
25
user3887814

もしあなたがWindows上でこれをやっているのならWAMPスタックの一つを使わずに、これをどうやって実行するかです。

  1. Windows用のPHPのインストール をダウンロードしてください。一般的には、スレッドセーフではないインストールが必要です。 32ビットまたは64ビットのビルドを使用できます
  2. Zipファイルをどこかに解凍します。私はC:\phpを提案するでしょう。追加のプロンプトなしで、Composerのインストーラーがそれを見つけました。
  3. Windows用のPHPの最新バージョンには、デフォルトでphp.iniが付いていません。代わりに、下記のように2つのファイルが表示されます。名前をphp.iniに変更するか、php.iniにコピーします。
    • php.ini-development
    • php.ini-production
  4. php.iniファイルを開き、この行からセミコロンを削除します(他のものもコメント解除したい場合がありますが、Composerにはこの行だけが必要です)。

    ;extension=php_openssl.dll
    

それがあなたがする必要があるすべてであるはずです。 Composerインストーラは、ここから必要なことをすべて実行します。

12
Machavity

両方のファイル(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
11

で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サーバーを再起動してください。アプリケーションを再インストールしてください。
7
DLoneDeveloper

これは昔からの質問ですが、私は同じ問題(PHP 7でも)を抱えていましたが、結局、解決策は非常に単純でした。他の答えのようにphp.iniの行をコメント解除するだけでは十分ではありませんでした。私はそれをから変更する必要がありました:

;extension=php_openssl.dll

に:

extension=ext/php_openssl.dll

extプレフィックスに注意してください。 dllはすでに存在していましたが、サブフォルダーにありました。設定を変更した後、作曲家のインストーラは満足していました。

7
K Cartlidge

開発用と本番用の2つのphp.iniファイルがあります。そのままにしておいてください、アイコン編集のようなギアでそれらのすぐ上の構成設定のための別のphp.iniファイルがあります。

6
keneth

「正しい」ファイル(すべてのphp.iniファイル)を編集した後。まだ問題がありました。私の解決策は、

  1. システム変数を追加する:OPENSSL_CONF

    oPENSSL_CONFの値は、現在のphpバージョンのopenssl.cnfファイルになります。

私にとってはそれでした:

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

- > WAMPを再起動 - >今すぐ動作するはずです

出典: http://php.net/manual/en/openssl.installation.php

3
Mafu

WAMPサーバーを使用しています。実際にそのファイルはopensslが開かれていることを示した。しかし手動でフォルダに移動してphp.iniを編集しました。それから私はそれがopensslを開いていないことに気づきました。

2
tharanga

私は同じ問題に直面したが、私はphp.iniとphp.exeを探していたときに私はC:\ UwAmp\bin\php\php-5.4.15にphp.exeが見つかったときC:\ UwAmp\binに\ Apache php.iniをC:\ UwAmp\bin\php\php-5.4.15にコピーし、行の拡張子= php_openssl.dllのコメントを外して修正しました。

2
M. K Hossain

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

次の行を参照してください。

;extension=php_openssl.dll

行の前のセミコロンを削除します。 WAMPサーバーサービスを再起動します(アイコントレイをクリックし、[すべてのサービスを再起動]をクリックします)。

2
yathavan

ソースからコンパイルした場合、extension=php_openssl.dllをphp.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"

うまくいけば、エラーは消えます

1
J11

それでも問題を解決できない場合は、これを見てください。これがあなたが探している解決策かもしれません

C:\ wamp\bin\php\php x-y-zフォルダにphp.iniファイルがいくつかあります。プロダクション、開発、その他のphp.iniファイルがあります。プロダクションファイルと開発ファイルを編集する意味はありません。下の画像とまったく同じファイルを探します。 (あなたはそれを見つけることができます。あなたの検索バーにphp.iniとタイプして検索してください)。ファイルを開いて削除してください。拡張子= php_openssl.dllから。ファイルを保存して閉じます。 Wamppサーバーのすべてのサービスを再起動します。作曲家を再インストールします。

それだ。

enter image description here

1
gihanmu

私と同じ問題を抱えている人のために。上記のすべての解決策を実行した後、まだ私のために働かなかった。私は、uWampがPHP.INIファイルをbin/Apacheディレクトリに作成していることを知りました。そのため、PHP.INIファイルをphpインストールディレクトリ、つまりbin/php/phpXXXXディレクトリにコピーする必要がありました。これはphp.exeが作曲者のセットアップから選択した場所でもあるはずです。

お役に立てれば。

1
Nitro Chummy

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
Dreyfi

Xamppを使用している場合は、インストールの最初に使用したいコマンドラインphpを選択した場所に戻って、xamppフォルダが含まれているパスを選択します。 php_openssl.dll 'php iniの中の1つのsslファイルを'; 'でコメントアウトすると、インストールはスムーズに実行されます。

0
ricardo Chitagu