繁体   English   中英

有什么方法可以监视所有 HTTP 协议并使用 WIndows 上的单个脚本阻止某些协议?

[英]Are there any ways to monitor all HTTP protocols and block certain ones using a single script on WIndows?

我想编写一个程序,可以监视用于打开默认浏览器的所有系统 HTTP/HTTPS 协议,并阻止某些协议,自动将某些请求的 URL 更改为另一个。 改一个URL的过程很简单,但是监控和拦截部分就比较费解了。

eg 当点击URL'https://example.com/asdf.htm'时,请求会被程序拦截,Windows系统会收到'http://www.example2.org/asdf'的命令.htm' 而不是后者而不是前者 URL 将由默认浏览器打开。

我是一名业余开发人员和学生,在解决此类问题方面没有太多经验。

我搜索了web,发现几年前有人问过类似的问题:

https://superuser.com/questions/554668/block-specific-http-request-from-windows

但是,我没有在页面中找到任何关于编码的有用建议。 也许我可以使用防病毒程序来阻止某些 URL 或更改主机文件以阻止某些 URL 但无法完成 URL 替换。 当然,将主机更改为重定向某些请求的特定服务器可能有效,但这太复杂了。 我希望有人可以通过提供一个简单的方法来监控 Windows 系统本身来帮助我解决问题。 谢谢!

总结我们在评论中的对话,为了重定向或限制流量,无论是网站,还是端口(协议实际上是通过端口“映射”的),主要解决方案通常是:

  1. 软件防火墙 - 请记住,SWFW 通常不会重定向,它们只是允许或允许通过端口的流量

  2. 硬件防火墙(或高级路由器,不是商用的,而是企业级的)——它们可以做你想做的,但它们非常昂贵,不值得在家做实验

  3. 代理服务器 - 这可以做你想做的事

正如您所说,其他可能有效或无效的替代方法包括编辑主机文件,但如前所述,我不推荐它,它是一个系统文件,如果您忘记了它,那么它可能会成为一个障碍(也保持请记住,即使在家里,通常你也不应该使用具有管理员权限的 Windows 用户,但这是另一回事)和浏览器扩展(我猜它只会改变页面上的内容,而不是浏览器的工作方式(例如改变 URL) .

我认为代理服务器是这里的最佳选择。 试试看,让我知道。

请记住,我仍然建议您阅读 about.networking,以便更好地了解在每个设置中您可以做什么和不能做什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM