cまたはc++を使用してLinuxでシステムプロキシ設定値を読み取る方法
3 に答える
あなたはこの機能を探していますgetenv ("http_proxy")
システムプロキシ設定は通常、HTTP_PROXY、HTTPS_PROXYなどの環境変数に保存されます。
envp
'C'を使用すると、図のようにmain()関数に引数を追加して登録変数を読み取ることができます。
int main (int argc, char *argv[], char *envp[])
{
char *http_proxy, *https_proxy;
http_proxy = getenv("HTTP_PROXY");
https_proxy = getenv("HTTPS_PROXY");
printf ("Proxy settings :: %s on %s.\n", http_proxy, https_proxy);
return 0;
}
これは、処理する変数に応じてうまくいくはずです。
私が見たほとんどの Linux ディストリビューションには、「システム プロキシ」の概念がありません。Linux (KDE、Gnome など) 上で実行されるデスクトップ環境には、通常、プロキシを設定するための構成オプションがあり、そのデスクトップ用に作成されたほとんどのアプリケーションはプロキシにアクセスできます。コードは、実行している環境によって異なります。また、たとえば KDE アプリを Gnome で実行したり、その逆を行ったりすると、両方が適切に構成されていない限り、同じ結果が得られない場合があります。このことやその他の多くの理由から、多くの個々のアプリケーションには独自の方法でプロキシを設定する方法があります。一部のアプリケーションで機能する可能性のある方法の1つは、他の回答で言及されている環境変数です(その他の可能性は、さまざまな構成ファイル、または gconf などの構成サービスの 1 つに接続します)。新しいアプリを作成していて、そのアプリでプロキシを設定して使用できるようにしたい場合、このアプローチはおそらく最も単純な方法の 1 つです。