我在一台计算机上使用 Windows 7 Ultimate 和一些用户凭据。我想阻止某些用户访问除 和 之外的网站*.stackexchange.com
。stackoverflow.com
如何在不安装第三方附加软件的情况下做到这一点?
答案1
好的,我想到了一个办法。大多数人通过编辑 HOSTS 文件来实现这一点,但这样做会限制的不是一个用户,而是所有用户。另一方面,代理设置是由用户自己决定的。
因此,对于 Internet Explorer,请转到Tools>Internet Options>Connections>LAN Settings
并检查"Use a proxy server for your LAN"
,并将其设置为127.0.0.1 port 80
,然后单击高级,并仅添加您希望它们访问的站点(我将省略 www,只使用域本身,用分号分隔多个域)。请注意,您可能需要添加您想要使用的站点可以访问的任何站点才能正常工作。
另请注意,如果他们是本地管理员,则很容易更改这一点。
我在 Windows 7 Ultimate 上进行了测试,并且有效。
答案2
看一眼Windows 7 家长控制. 它应该允许您控制除管理员之外的其他用户的网站访问。
答案3
对于 Windows,如果您不想使用家长控制等 Microsoft 云服务,代理绝对是正确的选择。上次我尝试时,家长控制要求将您的 Windows 密码设置为与 Microsoft 云帐户相同。在我看来,这是一个根本性的错误想法,所以对我来说根本行不通。
我已在本地 Windows 机器上成功设置了 Squid 代理服务器,该服务器对于同一台机器上可用的站点有不同的规则。
为此,安装Squid http代理并将以下内容添加到 squid.conf:
ACL 条目:
acl video_domains dstdomain .youtube.com .vimeo.com .googlevideo.com
acl port_kids localport 3128
acl port_parents localport 3129
访问规则:
http_access deny port_kids video_domains
听力条目:
http_port 3128
http_port 3129
现在将家长帐户配置为使用 127.0.0.1 端口 3129 上的代理,并将孩子指向代理 127.0.0.1 端口 3128。孩子无法访问被屏蔽的视频网站,但家长可以。我认为这里唯一的问题是并非所有浏览器都遵守全局代理设置。Chrome 使用全局设置,但我相信 Firefox 有自己的代理配置。
该方法应该适用于 Windows、Mac 或 Linux 桌面,并且可以轻松调整以适合 OP 要求的用例。