データURLはChrome起動時に小さなPACポリシーを運べる
file:// での読み込みやHTTPサーバーに頼らず、proxy-pac-url 引数にローカルのPACファイルを埋め込みます。
ChromiumのPACローダーはスクリプトのバイト列を含むデータURLを受け付けます。小さなUTF-8のPACファイルなら、GNU base64を使うBashの起動で引数をローカルに用意できます:
pac64=$(base64 -w0 "$HOME/.config/proxy.pac")
google-chrome --proxy-pac-url="data:application/x-ns-proxy-autoconfig;charset=utf-8;base64,$pac64"
インストール済みブラウザーの実行ファイル名を使ってください。GNU base64の -w0 は出力の折り返しを取り除きます。他のbase64実装では異なるオプションを使う場合があります。charset宣言は、デコードされたバイト列をどう解釈するかをPACローダーに伝えます。
これはファイルのスナップショットを起動引数に埋め込みます。後からファイルを変更しても、実行中のそのブラウザーのポリシーは更新されません。次に意図する起動のために引数を再生成してください。
意図した新しいブラウザープロセスとして起動してください。既存のインスタンスにURLを渡しても、新しい起動フラグを採用したことにはなりません。
コマンドラインの制限に無理なく収まるポリシーにはこの方法を保ってください。HTTPまたはHTTPSで維持するPACの場所は、独自の取得経路を持つ別の配信モデルです。データURLの仕組みに無効化されたNetwork Serviceフラグは不要です。