そのプロキシパスワードの行末を確認する
プロキシファイルから読み込んだエンドポイントが認証に失敗するときは、レコード区切りと資格情報の中身を切り分けます。
手入力では動くエンドポイントが、ファイルから読み込むと失敗する。パスワードを切り替える前に、レコードがどう読まれているかを確認してください。
行指向のファイルには区切り文字がある。パーサーが末尾の改行を最後のフィールドに残すと、クライアントに渡る資格情報が意図したものと変わりうる。Windows 形式の CRLF なら、確認すべきバイトはふたつになる。
PHP の file() は、行末の区切り文字なしでレコードを読むための FILE_IGNORE_NEW_LINES をサポートしている。ファイルの文書化された形式に合った動作を使ってください。
よくある後追いの修正には注意が必要です。すべてのフィールドを trim すること。スペースも本物のパスワード文字になりえます。前後の空白をすべて取り除くと、レコード終端を除くだけでなく資格情報そのものを変えてしまいます。
区切り文字も定義してください。非公式なコロン区切り形式は、パスワードや IPv6 アドレスにコロンが含まれると曖昧になりえます。その形式に従ってレコードを読み、意図したパスワードのバイトを保ち、そのうえで必要なら エンドポイント URL 用に構成要素をエンコードする。
診断では、長さや管理された非秘密のテスト値と比較してください。実際のパスワードや資格情報を含む完全な URL を出力すると、ごく小さなパーサーの誤りを直す間に別の問題を作ってしまいます。