3

我正在为我的 HSC 软件设计和开发重大项目开发一个公司网站。我有一段代码来检查 MySQL 数据库是否支持用户的浏览器,如果不支持,则向他们显示警告并记录他们的浏览器类型。这段代码使用 get_browser 函数(几乎)完美地工作,显示一条看起来有点像这样的消息:

我们检测到您正在使用 Internet Explorer 查看此站点。我们没有测试过这个浏览器,不能保证完全支持。为获得最佳效果,我们建议使用 Google Chrome。

然而,由于 httpd.conf 中的一些混乱和一些服务器重新启动,此代码不再有效。它将浏览器检测为“”。(只是一个空字符串)试图找出问题的根源,我在下面放了一个快速调试行:

echo $_SERVER['HTTP_USER_AGENT'];

由于某种原因,这会在每个浏览器中返回以下内容:

Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5

我想这是问题的原因,有谁知道为什么会这样?

4

1 回答 1

0

再一次,我的问题的解决方案非常具体。这是问题所在:

我使用 WebFaction 进行托管,他们有一个很棒的应用程序、网站和域设置,但是太复杂了,无法在这里完全解释。基本上,我一直在成功运行该网站,直到有一天 httpd 可执行文件随机消失。在与 WebFaction 的支持团队交谈后,我决定重建 Apache 并将其放入一个新的应用程序中。完成此操作后,我的服务器已修复并在之后的几周内继续平稳运行。几天前,我决定是时候清除旧的应用程序(它处于非活动状态但仍在服务器上)以重新获得一些磁盘空间。我没有意识到我的新应用程序中的 PHP.ini 引用了旧应用程序中的 browscap.ini。一旦这个被删除,它就再也找不到了,返回错误。当我去 PHP。

TL;DR,只要没有其他人搞砸迁移,他们就不应该有这个问题。

于 2012-06-16T06:49:54.057 回答