孩子们喜欢玩网童。但是,我启用了他们的帐户的“家长控制”,主要是为了限制他们的登录时间——我根本没有使用家长控制来限制他们访问的网站。这是一台运行 Leopard 的 iMac(我们还没有“升级”到 Snow Leopard,也不打算升级,除非它能保证解决这个问题)。
但是,他们无法通过自己的账户在 Webkinz 网站上玩游戏。Safari 和 Firefox 都遭遇了同样的命运:即使提供了正确的登录信息,应用程序(基于 Flash)也会响应说他们无法登录。
从同一台机器上的其他帐户运行正常。当然,从 PC 运行正常。
我在其他论坛上找到了一些有关该问题的帖子,但没有真正的解决方案。
我怎样才能让孩子们玩 Webkinz,同时保持家长控制开启?
更新:当查看时/private/var/log/apache2/access_log
,正如所建议的加拿大,我在登录过程中看到这两个请求:
127.0.0.1--[21/8/2009:21:40:05-0600]“发布http://66.48.69.102/login.phpHTTP/1.1” 200 35 127.0.0.1 - - [21/Aug/2009:21:40:06 -0600] “oxy-Connection:保持活动” 400 226
请注意无效请求:"oxy-Connection: keep-alive"
。显然,请求不知何故被破坏了,只有部分请求标头到达父控制代理。您知道是什么原因导致的,或者 Flash 的代理相关设置是什么吗?
答案1
如果你提到的家长控制允许你指定一个始终可以访问的网站列表(即所谓的白名单),那么您可能需要将一些其他主机名或 IP 地址添加到允许列表中,以使 Webkinz 正常工作。原因如下:
即使你显然可以浏览到www.webkinz.com主页,下载的用于登录游戏的 Flash 应用程序实际上使用了其他后台的网络服务器用于加载游戏内容(Flash SWF、图像、声音等)并与实现游戏逻辑的服务器进行通信,例如记住您拥有的宠物种类、宠物名称、库存等。
此外,这类大型网站通常使用内容分发网络 (CDN) 来优化带宽并扩展到许多并发用户,因此白名单设置中通常会涉及许多主机名或 IP 地址,即使在任何给定的单身的会话中您的浏览器可能只会使用其中一个地址。
Webkinz 支持页面列出了游戏运行所需的 IP 地址。请参阅:Webkinz World 被我的家长控制软件阻止了 - 我该怎么办?。
此外,我还遇到了此 Apple 支持讨论主题这表明可能需要采取一种变通方法,因为 Webkinz 连接的某些服务器使用的是裸 IP 地址而不是主机名。变通方法是将这些地址添加到 /etc/hosts。
我猜想解决方法是必要的,因为家长控制逻辑可能想要执行反向名称查找在任何裸 IP 地址上,确保所访问的站点实际上不是受主机名限制的站点。否则,聪明的孩子知道站点的真实 IP 地址,就有可能绕过仅使用名称的任何限制!
答案2
虽然问题描述不同,但我找到了一个发布有关类似问题的帖子建议通过删除其执行权限来禁用家长控制代理服务器。我试过了——Webkinz 现在正常工作了!
从终端窗口执行此操作的命令是
sudo chmod a-x /usr/sbin/httpd
这样我就可以在没有任何网页过滤的情况下运行家长控制,这基本上就是我现在想要做的(使用家长控制来限制登录时间)。我必须研究另一种内容过滤解决方案,因为 Leopard 的内置内容过滤器有太多错误。
在寻找类似页面时,我还发现本文建议不要禁用httpd
,而是禁用名为 的另一个代理httpsproxyd
。我还没有尝试过(而且我现在不需要从这台 Mac 提供 Web 内容),但可能值得一试。
正如文章中所述,需要注意的是,权限可能会因未来的系统更新而重置。如果孩子开始哭闹,我就会知道先去哪里找。
更新
安装后雪豹,上的权限/usr/sbin/httpd
被重置为可执行,但问题似乎已经消失。我猜这个错误已经修复了,但我找不到错误报告,更不用说修复的描述了。