- 締切済み
curlのエラー
fedora12を使っています。rootで curl -L URL (URLのページはテキストのみのページです。) を実行して、標準出力にURLのページのテキストを出力しようとしたのですが、下記のメッセージが出てきて、出来ませんでした。 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 curl: (7) couldn't connect to host http_proxy、HTTP_PROXYにはプロキシサーバのアドレスが正しく設定されていました。 何が原因か教えて頂けないでしょうか? よろしくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10359)
~/.bashrc は /etc/bashrc を読み込んでいますから、その前で設定しても /etc/bashrc やそこから呼び出される /etc/profile.d/*.sh で上書きされるかも知れないです。 ~/.bashrc の末尾で設定しましたか? あと、http_proxyの話ではないですが、ユーザも前の人を引き継いだのであれば、 ~/.curlrc が存在しないかも確認が必要。
- notnot
- ベストアンサー率47% (4900/10359)
>URLのページの内容が標準出力出力されました ということは、やはり、http_proxy のセットが間違っていると言うことですね。 exportしてないとか?
補足
コマンドで、 export http_proxy="http://プロキシのIPアドレス:ポート番号" を実行して、その後、echo $http_proxy で確認して、それからcurlを実行したのですが、それでは駄目でした。 このPCは元は他の人が使っていたもので、プロキシのIPが既にどこかで設定されていて、そのIPを変更したかったのですが、.bash_profileや.bashrc(bashを使っています)、「デスクトップ」メニューの「設定」-「ネットワークのプロキシ」にもIPアドレスは設定されていなくて、どこで設定されているのか分からず、変更することが出来ませんでした。 ちなみに、上記のようなexport文を.bash_profileに書き加えても、「ネットワークのプロキシ」に新しいIPアドレスをにゅうりょくしても、http_proxyの値は元々設定されているアドレスのままでした。 このせいでしょうか? そうだとしたら、プロキシのIPアドレスを設定しなおすにはどうすればいいのでしょうか??
- notnot
- ベストアンサー率47% (4900/10359)
No1です。 エラーメッセージを見ると、curl で指定しているURLのミスが原因ではないですね。これが間違っていればproxyがエラーのHTMLを返すはず。 couldn't connect to host ということは、proxyサーバーに接続できないということです。 curl --proxy1.0 PROXYADDR:PORT -L URL で、どうですか?
お礼
ありがとうございます! URLのページの内容が標準出力出力されました。
- notnot
- ベストアンサー率47% (4900/10359)
1.ネットワークがあなたの思っている通りの構成である 2.http_proxyという環境変数にプロキシーサーバーのURLが正しくセットされている 3.curl -L URL のURLが正しい であれば、取得できるはずです。出来ないとなると、上記のどれかが間違っているわけですが、どれが間違っているのかは質問文には手がかりがありません。 上記の1-3を具体的に書くとアドバイスが得られるでしょう。
補足
2については、echo $http_proxyを実行すると、 http://IPアドレス:8080 と表示されて、IPアドレスの部分にはプロキシサーバの正しいアドレスが表示されていました。このアドレスはWindowsのFirefoxでも設定していて、Firefoxは正常に動いているので、間違いないと思います。 3については、このURLをFirefoxでアドレスバーに入力して、このページを見ることが出来るので、URLは間違いないと思います。
お礼
補足欄で書き忘れたのでこちらで失礼します。 > ~/.curlrc > が存在しないかも確認が必要。 存在しませんでした。
補足
~/.bashrc の末尾で設定したら、http_proxyの値が変更されました。echo $http_proxyで見ると、 新しいIPアドレス:新しいポート番号 になっていました。ありがとうございます! ただし、http_proxyの値が正しくなったので、 --proxy1.0 PROXYADDR:PORT のオプションを無にして、curl -L URL を実行してみたところ、 curl: (7) couldn't connect to host というエラーで、URLのページの内容が表示されませんでした。 何が問題なのでしょうか…