好吧,现在我只用 .NET 编写代码,一些 OSS 可能有更好的想法。
无论如何,如果不使用代理(最好是网关上的透明代理服务器),我就无法做到这一点。一定有人写过这样的东西。当然,每个商业 WiFi 热点都有一个,但您可能想要一个在服务器而不是设备上运行的热点。
我对此并没有真正的想法,但这是我过去曾想过的事情。
您也许能够找到具有该功能的路由器/防火墙盒。 Microsoft IAS 我有一个插件可以执行此操作(它不太便宜)。简单浏览一下谷歌,并没有发现其他软件能做到这一点。
Wingate http://www.wingate.com/products/wingate/index.php- 可能会做到,我不明白
否则,您可以编写一个透明代理应用程序(这意味着,除非您编写嵌入式代码,否则您将需要使用应用程序服务器作为默认网关),或者如果您可以锁定用户浏览器代理设置,则只需编写一个普通代理。我想编码这可能不是一个简单的选择!但这是可能的。您甚至可以使用 IIS 和 ASP.NET。
iisproxy http://www.iisproxy.net/是一个使用源代码作为 IIS ISAPI 过滤器实现的代理。我怀疑这是用 C 或 C++ 编写的。
Codeplex上是反向代理代码。您可以更改它并扩展到完整代理。
您也许能够使用套接字完成所有工作,并完全脱离应用程序层。这可能会让生活变得更简单,所以我希望有一个不能这样做的原因!让基于套接字的代理重定向到不合规用户的时间记录应用程序,当他们填写时间表时,只需透明地在套接字之间传递所有数据即可。
我对您或任何人提出的建议很感兴趣,因为我一直希望每天向我们办公室的用户显示一次带有继续框的 AUP。更好的是,如果代理收集了该信息,它可以列出用户昨天在 Facebook 等上花费的时间。我认为足以改变人们的行为。其实还有很多有用的东西
这可以通过易于更改或可扩展的 HTTP 代理来完成。