Composer 依存関係管理ツールをWin7/64 + WampServer 2.2にインストールしようとしています Installer をセットアップすると、次のメッセージが表示されます。
Openssl拡張が欠落しているため、Composerのセキュリティと安定性が低下します。可能であれば、有効にするか、-with-opensslでphpを再コンパイルする必要があります
だからここに私がやったことがあります...
php > php extensions > php_openssl
をクリックしましたphp > php.ini
をクリックし、コメント化されていないことを確認するためにopensslを検索しました。そうではありませんでした。私は何が欠けていますか?
お知らせ下さい。
WAMPは、CLIとApacheで異なるphp.iniファイルを使用します。 WAMP UIでphp_opensslを有効にすると、CLIではなくApacheで有効になります。 CLIで有効にするには、C:\ wamp\bin\php\php-5.4.3\php.iniを変更する必要があります。
;extension=php_openssl.dll
のphp.ini
行のコメントを外すのに加えて、他の全員が言及していることに加えて、;extension_dir = "ext"
行のコメントも外しておく必要があります。コメントを解除するには、プレフィックスのセミコロンを削除して保存します。
その行は、WAMPやXAMPPなどのパッケージでは既にコメント解除されているかもしれませんが、Windows用の単純なPHPダウンロードではないため、検証する価値があります。また、php.ini
などのサンプルの1つを新しいファイルにコピーしてphp.ini-development
という名前を付けて、php.ini
ファイルを作成する必要があります。次に、これらの変更を行います。
また、将来、PHPやComposerなどのツールをインストールするには、Chocolateyパッケージマネージャーを使用することをお勧めします。それはchoco install composer
と同じくらい簡単です。もちろん、Composerをchocoメソッドでインストールする前にphp.iniを編集する必要があります。 Windowsの将来のバージョンでは、 Chocolateyのようなパッケージ管理ツールがWindowsに組み込まれます 、Ubuntuでのapt-get
と同じ方法です。開発者にとってエキサイティングな時代が待っています!
どちらの方法でも、Composerをインストールした後、ターミナルを再起動することを忘れないでください。コマンドプロンプト、Bash(Gitでインストール)、またはPowershellのいずれを使用している場合でも、更新された環境変数が機能する前に再起動する必要があります。
Opensslが有効になっていても同じ問題がありました。問題は、Composerインストーラーがこの設定ファイルを見ていることでした:
C:\ wamp\bin\php\php5.4.3\php.ini
ただし、実際に読み込まれる設定ファイルは次のとおりです。
C:\ wamp\bin\Apache\apache2.2.22\bin\php.ini
そのため、最初のphp.iniファイルでコメント解除するだけで、うまくいきました。これはデフォルトで私のマシンにWAMPがインストールされた方法です。私は何も変えませんでしたので、これはおそらく他の人にも起こります。これは上記のAugie Gardnerの答えと基本的に同じですが、2つのphp.iniファイルがあるかもしれないことを指摘したかっただけです。
両方で;extension=php_openssl.dll
のコメントを外します
wamp\bin\php\php5.4.12\php.ini
wamp\bin\Apache\Apache2.4.4\bin\php.ini
それが動作します
C:\ laravel-master> composer create-project laravel/laravel laravel/laravelのインストール(v4.0.6)-laravel/laravelのインストール(v4.0.6)[RuntimeException] openssl拡張機能を有効にしてファイルをダウンロードする必要がありますhttps
EasyPhp(WAMPタイプ)を使用しています。タスクバーのEasyPHPアイコンで、右クリックして構成を選択し、PHPを選択します。メモ帳でPHP.ini
ファイル構成を開き、検索または検索します CTRL+F Word OPENSSL
のメモ帳では、この;extension=php_openssl.dll
を削除するだけです。 extension=php_openssl.dll
がアクティブです。
C:\ laravel-master> composer create-project laravel/laravel laravel/laravelのインストール(v4.0.6)-laravel/laravelのインストール(v4.0.6)ダウンロード:C:\ laravel-masterに100%作成されたプロジェクト\ laravelパッケージ情報を含むcomposerリポジトリの読み込み依存関係のインストール(require-devを含む)
開いたwamp/bin/Apache/apache2.4.4/bin/php config .. wamp/bin/php/php5.4.16/php conf設定、php-iniプロダクション、php-ini dev、phpForApache find extension = php_openssl .dllおよび;を削除してコメント解除
「c:\ Program Files\wamp\bin\php\php5.3.13\php.ini」ファイル検索を編集する必要があります:; extension = php_openssl.dll
先頭のセミコロンを削除します
注:ファイルの保存が機能しない場合は、管理者として編集する必要があります。 (win7)スタートメニューに移動し、メモ帳を検索し、メモ帳を右クリックして、[管理者として実行]をクリックします。
composerのインストールウィンドウで、[戻る]をクリックしてから[次へ]をクリックする(または閉じてからもう一度開始する)と、動作するはずです。
Php.iniへのシンボリックリンクを作成する必要があります。 ロシア語のリンク でごめんなさい。
はい、php.iniを開いてセミコロンを削除する必要があります。
;extension=php_openssl.dll
「;」を削除しますこのように、それは動作します。
extension=php_openssl.dll
ハッピーコーディング。
短くて甘い、wamp/bin/php/php5.3.13
(または任意のphpバージョン)でこの行のコメントを外します:;extension=php_openssl.dll
(;
を削除)
Composerのコマンドラインインストールを実行します。エラーは発生しません。
行ってもいい!
これらの答えはすべて良いですが、実際には、コメントを外した拡張機能をすべて機能させるには、拡張ディレクトリを正しく理解する必要があります。のような物理的または相対パスを書くことができます
extension_dir = "C:/myStack/php/ext"
または
extension_dir = "../../php/ext"
Httpd.exe Apache Webサーバー(C:\ myStack\Apache\bin)に関連していますが、Composerまたはphysical path cliモードはWebサーバーを使用しないためです!
Composerをインストールするために、以下の手順でうまくいきました:(WAMPバージョン2.4 x64bit)
edit ->
**C:\wamp\bin\php\php5.4.12\php.ini**
;;uncomment below line or remove the semicolons ';'
extension=php_openssl.dll
**C:\wamp\bin\Apache\Apache2.4.4\bin\php.ini**
extension=php_openssl.dll
私は同じ問題に直面していました。 phpフォルダーの名前をphp7_winxxxx
からphpに変更すると、正常に機能しました。 composerがc:/php/ext
のphp_opensslモジュールの場所をチェックしているように見えました。
環境変数のPATH
にc:/php
を追加する必要があるかもしれません