单个网站的代理设置

单个网站的代理设置

在 KDE 中,我可以设置手动代理,并且在例外情况下使用特定网站(例如此处的 youtube),如屏幕截图所示,仅使用该代理,所有其他网站均可正常加载,我的问题是如何在 unity 或 gnome 中执行此操作,以便只有 youtube 可以使用这些代理?

在此处输入图片描述

答案1

单个网站的代理设置

由于您要为单个网站设置代理,因此没有必要弄乱系统代理。而且一次又一次地更改系统代理也将是一项繁琐的工作。使用 Google Chrome 可以轻松实现您想要的功能。我可以向您推荐 Chrome 中的扩展程序“Proxy SwitchySharp”。您只需单击一下即可在两个或多个代理设置和直接连接之间切换。

在此处输入图片描述

除此之外,它还有许多其他高级选项可供您的代理使用,例如,您可以设置切换规则,可以备份您的设置等。

在此处输入图片描述

如何在 Google Chrome 中安装 Proxy SwitchySharp

  • 打开 google-chrome
  • 转到设置>>扩展(或者在地址栏中输入chrome://extensions/

  • 点击“获取更多扩展”(左下角)

  • 搜索“Proxy SwitchySharp”

在此处输入图片描述

  • 单击+标志进行添加。

一些澄清

  • 它可以独立于 KDE、Gnome、Unity 等桌面环境使用。因为它在浏览器上使用自己的代理设置,而不是系统代理。
  • 它可以使用由 tor 或任何其他来源配置的代理。

你需要做什么

  • 在 Proxy SwitchySharp 中创建两个配置文件,例如 profile_1 和 profile_2。
  • profile_1 将具有您的默认代理或直接连接,而 profile_2 将具有 tor 生成的代理和相应的端口。
  • 当您浏览不受限制的网站时请使用profile_1,浏览受限制的网站时请使用profile_2。

希望这是您所问的。

答案2

为什么要为 2 或 3 个网站制作系统范围的代理?我的意思是,这更简单,而且在我看来,最好在 Firefox 或 Chrome 或您使用的任何浏览器中为这些网站制作代理。
想想看,每次使​​用 Skype 或 steam 或任何其他需要互联网的程序时,您都必须查看您是否正在访问 YouTube 或谷歌或任何其他您想要使用代理的网站。

我认为另一种解决方案是在 Chrome 或 Firefox 中安装扩展程序,并将浏览器配置为仅对那些特定网站使用代理。

答案3

我依然觉得这个答案是解决您问题的更好方法。如果您坚持要更改系统代理以实现您的目的,则可以使用下面给出的 shell 脚本。并且根据您的问题,您希望在 unity 或 gnome 上执行此操作。

#!/bin/bash
if [ $# -lt 1 ]
then
    echo "$0: missing operand"
    echo "Usage $0 [option]"
    echo "options : [default|restricted]"
    exit 0
fi
case "$1" in
    default)
        gsettings set org.gnome.system.proxy mode 'manual'
        gsettings set org.gnome.system.proxy.http enabled true
        gsettings set org.gnome.system.proxy.http host 'proxy.server.addr_1'
        gsettings set org.gnome.system.proxy.http port proxy_port_1
        gsettings set org.gnome.system.proxy.http authentication-user 'user_id'
        gsettings set org.gnome.system.proxy.http authentication-password 'password'
        gsettings set org.gnome.system.proxy use-same-proxy true
        gsettings set org.gnome.system.proxy ignore-hosts ['localhost',  '127.0.0.1', 'all', 'other', 'hosts']
        ;;
    restricted)
        gsettings set org.gnome.system.proxy mode 'manual'
        gsettings set org.gnome.system.proxy.http enabled true
        gsettings set org.gnome.system.proxy.http host 'proxy.server.addr_2'
        gsettings set org.gnome.system.proxy.http port proxy_port_2
        gsettings set org.gnome.system.proxy.http authentication-user 'user_id'
        gsettings set org.gnome.system.proxy.http authentication-password 'password'
        gsettings set org.gnome.system.proxy use-same-proxy true
        gsettings set org.gnome.system.proxy ignore-hosts ['localhost',  '127.0.0.1', 'all', 'other', 'hosts']
        ;;
    * ) 
        echo "$0: invalid option"
        ;;
esac

您需要在上面两节中分别为您的默认和 tor 创建的代理定义两组proxy.server.addrproxy_portuser_id和。passwordignored hosts

如果您不想要任何部分,只需删除该行或根据需要修改选项即可。例如,如果您没有代理user_idpassword请在复制脚本时删除这些行。很可能 tor 不提供用户名和密码。

用法

将脚本另存为switch_proxy.sh。赋予其执行权限。

chmod +x /path/to/switch_proxy.sh

要在整个系统范围内使用默认代理,

/path/to/switch_proxy.sh default

要在整个系统中使用修改后的代理,

/path/to/switch_proxy.sh restricted

相关内容