feature: `Linux` 也支持系统代理排除域名功能
parent
0fff380ad1
commit
463c3e45cd
|
@ -269,8 +269,6 @@ const executor = {
|
|||
// 延迟加载config
|
||||
loadConfig()
|
||||
|
||||
// const local = 'localhost, 127.0.0.0/8, ::1'
|
||||
|
||||
// https
|
||||
const setProxyCmd = [
|
||||
'gsettings set org.gnome.system.proxy mode manual',
|
||||
|
@ -285,8 +283,10 @@ const executor = {
|
|||
setProxyCmd.push("gsettings set org.gnome.system.proxy.http host ''")
|
||||
setProxyCmd.push('gsettings set org.gnome.system.proxy.http port 0')
|
||||
}
|
||||
// ignore-hosts
|
||||
// setProxyCmd.push(`gsettings set org.gnome.system.proxy ignore-hosts "${local}"`)
|
||||
|
||||
// 设置排除域名(ignore-hosts)
|
||||
const excludeIpStr = getProxyExcludeIpStr("', '")
|
||||
setProxyCmd.push(`gsettings set org.gnome.system.proxy ignore-hosts "['${excludeIpStr}']"`)
|
||||
|
||||
await exec(setProxyCmd)
|
||||
} else { // 关闭代理
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
</div>
|
||||
</a-form-item>
|
||||
|
||||
<!-- 以下功能仅windows支持,mac和linux暂不支持 -->
|
||||
<!-- 以下两个功能仅windows支持,mac和linux暂不支持 -->
|
||||
<a-form-item v-if="isWindows()" label="设置环境变量" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-checkbox v-model="config.proxy.setEnv" >
|
||||
是否同时修改<code>HTTPS_PROXY</code>环境变量(不好用,不建议勾选)
|
||||
|
@ -46,49 +46,46 @@
|
|||
<div class="form-help">解决<code>OneNote</code>、<code>MicrosoftStore</code>、<code>Outlook</code>等<code>UWP应用</code>开启代理后无法访问网络的问题</div>
|
||||
</a-form-item>
|
||||
|
||||
<!-- 以下功能仅windows和macos支持,linux暂不支持 -->
|
||||
<div v-if="isWindows() || isMac()">
|
||||
<hr/>
|
||||
<a-form-item label="排除国内域名" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-checkbox v-model="config.proxy.excludeDomesticDomainAllowList" >
|
||||
是否排除国内域名白名单
|
||||
</a-checkbox>
|
||||
</a-form-item>
|
||||
<a-form-item label="自动更新国内域名" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-checkbox v-model="config.proxy.autoUpdateDomesticDomainAllowList" >
|
||||
是否自动更新国内域名白名单
|
||||
</a-checkbox>
|
||||
<div class="form-help">
|
||||
开启自动更新并启动系统代理时,将会异步从下面的远程地址下载国内域名白名单文件到本地。<br/>
|
||||
注:只要下载成功后,即使关闭自动更新功能,也会优先读取最近下载的文件!
|
||||
</div>
|
||||
</a-form-item>
|
||||
<a-form-item label="远程国内域名地址" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-input v-model="config.proxy.remoteDomesticDomainAllowListFileUrl" :title="config.proxy.remoteDomesticDomainAllowListFileUrl"></a-input>
|
||||
<div class="form-help">
|
||||
远程国内域名白名单文件内容可以是<code>base64</code>编码格式,也可以是未经过编码的
|
||||
</div>
|
||||
</a-form-item>
|
||||
<hr/>
|
||||
<a-form-item label="自定义排除域名" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-row :gutter="10">
|
||||
<a-col :span="22">
|
||||
<span>访问的域名或IP符合下列配置时,将跳过系统代理</span>
|
||||
</a-col>
|
||||
<a-col :span="2">
|
||||
<a-button type="primary" icon="plus" @click="addExcludeIp()"/>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="10" v-for="(item,index) of excludeIpList" :key='index'>
|
||||
<a-col :span="22">
|
||||
<a-input :disabled="item.value === false" v-model="item.key"></a-input>
|
||||
</a-col>
|
||||
<a-col :span="2">
|
||||
<a-button type="danger" icon="minus" @click="delExcludeIp(item,index)"/>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form-item>
|
||||
</div>
|
||||
<hr/>
|
||||
<a-form-item label="排除国内域名" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-checkbox v-model="config.proxy.excludeDomesticDomainAllowList" >
|
||||
是否排除国内域名白名单
|
||||
</a-checkbox>
|
||||
</a-form-item>
|
||||
<a-form-item label="自动更新国内域名" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-checkbox v-model="config.proxy.autoUpdateDomesticDomainAllowList" >
|
||||
是否自动更新国内域名白名单
|
||||
</a-checkbox>
|
||||
<div class="form-help">
|
||||
开启自动更新并启动系统代理时,将会异步从下面的远程地址下载国内域名白名单文件到本地。<br/>
|
||||
注:只要下载成功后,即使关闭自动更新功能,也会优先读取最近下载的文件!
|
||||
</div>
|
||||
</a-form-item>
|
||||
<a-form-item label="远程国内域名地址" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-input v-model="config.proxy.remoteDomesticDomainAllowListFileUrl" :title="config.proxy.remoteDomesticDomainAllowListFileUrl"></a-input>
|
||||
<div class="form-help">
|
||||
远程国内域名白名单文件内容可以是<code>base64</code>编码格式,也可以是未经过编码的
|
||||
</div>
|
||||
</a-form-item>
|
||||
<hr/>
|
||||
<a-form-item label="自定义排除域名" :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<a-row :gutter="10">
|
||||
<a-col :span="22">
|
||||
<span>访问的域名或IP符合下列配置时,将跳过系统代理</span>
|
||||
</a-col>
|
||||
<a-col :span="2">
|
||||
<a-button type="primary" icon="plus" @click="addExcludeIp()"/>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="10" v-for="(item,index) of excludeIpList" :key='index'>
|
||||
<a-col :span="22">
|
||||
<a-input :disabled="item.value === false" v-model="item.key"></a-input>
|
||||
</a-col>
|
||||
<a-col :span="2">
|
||||
<a-button type="danger" icon="minus" @click="delExcludeIp(item,index)"/>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form-item>
|
||||
</div>
|
||||
<template slot="footer">
|
||||
<div class="footer-bar">
|
||||
|
|
Loading…
Reference in New Issue