Chinaunix

标题: firefox代理设置脚本如何实现 [打印本页]

作者: ryh19860922    时间: 2011-07-04 15:42
标题: firefox代理设置脚本如何实现
每次都要鼠标点几下,很是麻烦,
有没有可能通过脚本实现
不一定shell呀
多谢
作者: li2002    时间: 2011-07-04 16:29
和IE中pac文件一样写吧
http://www.truevue.org/javascript/pac-format

  1. function FindProxyForURL(url, host) {
  2.    if (shExpMatch(url,"*.google.com/*")) {
  3.      return "PROXY 192.168.1.1:3128";
  4.    }
  5.    if (shExpMatch(url, "*.wikipedia.com:*/*")) {
  6.      return "SOCKS5 lilinux.net:1080";
  7.    }
  8.    if (isInNet(host, "10.0.0.0",  "255.0.0.0")){
  9.      return "DIRECT";
  10.    }
  11.    return "DIRECT; PROXY 192.168.1.1:3128; SOCKS5 lilinux.net:1080";
  12. }
复制代码

作者: xiaopan3322    时间: 2011-07-04 17:43
几乎所有的浏览器都可以使用pac文件……
作者: ryh19860922    时间: 2011-07-04 19:49
回复 2# li2002

好像每次载人还是要点几下,
pac文件载入有简单的方法吗
作者: xiaopan3322    时间: 2011-07-04 21:16
回复 4# ryh19860922


    怎么会需要点呢?pac文件的作用就是用来自动匹配的,要么你配置搞错了,要么你的pac没写好
作者: li2002    时间: 2011-07-04 22:09
回复 4# ryh19860922


   设置好了不可能再要你点什么,我也一直用pac,以解决不同代理的问题,只要写好并设置好了,代理问题就不用自己再操心了。
作者: ryh19860922    时间: 2011-07-04 22:55
回复 5# xiaopan3322


    我是说切换使用代理和不使用代理,
    有时代理不能用还是需要直接连网的,那时必须关掉这个代理
    所以切换时,避免不了的
作者: li2002    时间: 2011-07-05 08:01
晕倒,pac文件就是解决有的要代理,有的不要代理,有的要A代理,有的要B代理这个问题的
按规则都写在pac文件里,然后在IE中只勾选使用自动配置脚本,填上类似file://c:/proxy.pac
其他都不勾选。
对某一网址想先直连,不通情况下再走代理也是可以的,可以返回多个代理
return "DIRECT; PROXY 192.168.1.1:3128";
作者: ryh19860922    时间: 2011-07-05 09:07
我目前的上网方式为:
(1)帐号登录直接上网 (2)通过代理上网.
但是有时代理不通,  还是需要帐号上网,
下面两种方式都试过
return "DIRECT; PROXY 192.168.0.6:808";   #直接进入帐号登录界面, 不经代理
return "PROXY 192.168.0.6:808; DIRECT";   #始终使用代理, 代理不通时处于加载状况, 不会进入帐号登录界面
因此,当代理不通时, 必需手动选择直接联接至因特网, 不知你看懂没,
也或许PAC文件我不会写吧, 呵呵
作者: xiaopan3322    时间: 2011-07-05 09:32
回复  xiaopan3322


    我是说切换使用代理和不使用代理,
    有时代理不能用还是需要直接连网的, ...
ryh19860922 发表于 2011-07-04 22:55



    晕倒,pac文件就是为了解决这个的啊,说明你的pac文件没写好……
作者: xiaopan3322    时间: 2011-07-05 09:38
回复 9# ryh19860922


    简单的例子:
  1. function FindProxyForURL(url, host) {

  2.      if ( shExpMatch(host, "localhost") ) { return "DIRECT"; }
  3.      if ( shExpMatch(host, "localhost.*") ) { return "DIRECT"; }
  4.      if ( shExpMatch(host, "127.0.0.*") ) { return "DIRECT"; }
  5.      if ( isPlainHostName(host) ) { return "DIRECT"; }

  6.      if ( shExpMatch(host, "*.xxx.yyy.net") ) { return "PROXY aaa.bbb.ccc.ddd:8080"; }
  7. }
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2