我正在尝试将不需要的 HTTPS URL 重定向到代理并显示自定义错误页面。
首先,我的 pac 文件由绑定在端口 80 上的 IIS10 网站提供给客户端。
其次,在我的 pac 文件中,我使用 dnsDomainIs 检查了一些 URL,如果域匹配,它直接进入 Internet。
第三,在我的 pac 文件中,如果域不匹配,它会重定向到在另一个端口上绑定的同一 IIS 上运行的另一个网站以显示特定网页。
我想说到目前为止一切都在运行,除非在客户端上,我尝试查看https://www.google.com是否被重定向到代理(网站)并且客户端浏览器显示自定义网页但 nada :-/
我的意思是,每次他浏览一个与 PAC 中的网站不匹配的网站时,都会在客户端浏览器上显示一个自定义页面。
我在我的 pac 中使用了这些规则:
function FindProxyForURL(url, host) {
if (dnsDomainIs(host, "www.hp.com")) { return "DIRECT"; }
// every other http: URLs will redirect to the localhost:8080 to display an error page
if (url.substring(0,5)=="http:" ) { return "PROXY localhost:8080"; }
// below the rest like https should be redirected to the localhost:443
else { return "PROXY localhost:443"; }
}
对于 URL 以https://onedrive.live.com/about/en-us/开头的每个网站,它似乎没有通过 localhost:443 重定向,并且客户端浏览器确实显示与 URL 相关的页面,而不是我的自定义页面页。
非常感谢任何帮助,我没有想法,
非常感谢。
呸