发现问题 以Ubuntu系统为例,我们通过genpac生成autoproxy.pac文件,然后点击系统设置->网络->代理设置->自动,在输入框中输入file://绝对路径/autoproxy.pac。设置好以后,Chrome应当可以自动切换网络,但是Chrome无法访问google的搜索引擎,而火狐浏览器可以正常访问。
分析问题 出现上面问题的唯一可能就是Chrome设置有误,因此点击设置->高级设置->打开代理设置,打开的就是Ubuntu系统的网络设置。因此,我们可以判断自动代理模式设置失效,这里我们就要仔细分析为什么会失效?
解决方案 出现上面问题的主要原因是:Chrome移除对file://和data:协议的支持,目前只能使用http://协议。因此,我们打算使用nginx实现对本地文件的http映射。
安装nginx
代码语言:javascript复制sudo apt-get install nginx
修改nginx.cnf配置文件
代码语言:javascript复制vim /etc/nginx/nginx.conf
在nginx.conf的http{…}代码块中输入:
代码语言:javascript复制server{
listen 80; #注意这里不用":"隔开,listen后面没有冒号, 这里端口号一定为80,pac文件中代理的端口号可以为1080等
server_name 127.0.0.1; #注意这里不用":"隔开,server_name后面没有冒号
location /autoproxy.pac {
alias 绝对路径/autoproxy.pac;
}
}
重启nginx
代码语言:javascript复制sudo systemctl restart nginx
把http://127.0.0.1/autoproxy.pac填写到系统设置->网络->代理设置->自动代理中
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/180449.html原文链接:https://javaforall.cn