37

インターネットにアクセスする唯一の方法がHTTPまたはsocksプロキシを使用しているネットワークでcomposerを使用しています。http_proxy および https_proxy 環境変数があります。Compose が HTTPS URL にアクセスしようとすると、次のようになります。

 file could not be downloaded: failed to open stream: Cannot connect to HTTPS server through proxy

私の知る限り、https Web サイトに接続する唯一の方法は connect 動詞を使用することです。このプロキシの背後で composer を使用するにはどうすればよいですか?

4

10 に答える 10

42

Windows を使用している場合は、同じ環境変数を設定する必要がありますが、Windows スタイル:

set http_proxy=<your_http_proxy:proxy_port>
set https_proxy=<your_https_proxy:proxy_port>

これは、現在の cmd.exe で機能します。これをより永続的に行いたい場合は、システムで環境変数を使用することをお勧めします。

于 2013-09-17T14:01:16.470 に答える
33

Linux または Unix (OS X を含む) を使用している場合は、環境に影響する場所にこれを配置する必要があります。

export HTTP_PROXY_REQUEST_FULLURI=0 # or false
export HTTPS_PROXY_REQUEST_FULLURI=0 #

使用するシェルに応じて、マシン上のすべてのユーザー、または/etc/profile自分のユーザーまたはにグローバルに影響を与えるために、それを配置できます。~/.bashrc~/.zshrc

Windows を使用している場合は、[環境変数] コントロール パネルを開き、システムまたはユーザーの環境変数のいずれかを追加して、 と の両方をまたはHTTP_PROXY_REQUEST_FULLURIHTTPS_PROXY_REQUEST_FULLURI設定します。 0false

これを読んでいる他の人 (あなたではありません。あなたがこれらをセットアップしたと言ったので) については、同じ方法を使用して正しいプロキシに設定されていることを確認HTTP_PROXYしてください。HTTPS_PROXYUnix/Linux/OS X を使用している場合、大文字と小文字の両方の変数名を設定するのが最も完全な方法です。小文字バージョンのみを使用するものもあれば、大文字を使用する IIRC もあるためです。(私はよく Windows で Cygwin という一種のハイブリッド環境を使用しており、両方を使用することが重要であることはわかっていますが、純粋な Unix/Linux 環境では小文字だけで済む可能性があります。)

これらすべてを実行しても問題が解決せず、正しいプロキシ アドレスが設定されていることが確実な場合は、会社が Microsoft プロキシ サーバーを使用しているかどうかを調べてください。その場合、おそらく、Cntlmを子プロキシとしてインストールして、Composer (など) と Microsoft プロキシ サーバーの間を接続する必要があります。設定方法の詳細と手順については、Google CNTLM を参照してください。

于 2013-08-09T21:24:06.257 に答える
8

資格情報を使用する必要がある場合は、これを試してください:

export HTTP_PROXY="http://username:password@webproxy.com:port"
于 2014-09-19T13:05:23.873 に答える
7

これを試して:

export HTTPS_PROXY_REQUEST_FULLURI=false

数週間前に会社でプロキシの背後で働いていた私のためにこの問題を解決しました。

于 2013-06-26T23:15:13.313 に答える
6

これはうまくいきます、これは私の場合です...

C:\xampp\htdocs\your_dir>SET HTTP_PROXY="http://192.168.1.103:8080" 

あなたのIPとポートに置き換えてください

于 2016-04-22T19:26:14.310 に答える
2

iconoclast の答えはうまくいきませんでした。

PHP を 5.3.* (xampp 1.7.4) から 5.5.* (xampp 1.8.3) にアップグレードしたところ、問題は解決しました。

最初に iconoclast の回答を試してください。うまくいかない場合は、アップグレードすると問題が解決する可能性があります。

于 2013-09-30T15:04:32.050 に答える
2

標準HTTP_PROXY環境変数を使用できます。プロキシの URL に設定するだけです。多くのオペレーティング システムでは、この変数が既に設定されています。

変数をエクスポートするだけで、常に入力する必要はありません。

export HTTP_PROXY="http://johndoeproxy.cu:8080"

composer updateそしたら普通にできる。

于 2014-08-16T07:32:23.340 に答える
0

以上の考えに基づき、composer のプロキシ環境を作るためのシェルスクリプトを作成しました。

#!/bin/bash
export HTTP_PROXY=http://127.0.0.1:8888/
export HTTPS_PROXY=http://127.0.0.1:8888/
zsh # you can alse use bash or other shell

このコードは という名前のファイルにあり、プロキシが必要なときに~/bin/proxy_mode_shell新しいシェル インスタンスを作成します。zsh更新が完了したら、キーを押すだけCtrl+Dでプロキシ モードを終了できます。

または直接実行できない場合に追加export PATH=~/bin:$PATHします。~/.bashrc~/.zshrcproxy_mode_shell

于 2017-02-09T12:11:57.703 に答える