browscap ini directive 未设置

2022-08-30 10:22:54

我正在使用这个函数来警告人们他们的浏览器不支持Javascript。实际上,我用它来告诉他们可以使用我正在构建的Web应用程序的某些部分。我决定正确使用Javascript,因为我厌倦了听那些害怕使用它的开发人员,而且我看到了这门语言的巨大潜力。我说点题外话,这是错误。get_browser()

browscap ini directive 未设置

现在我想这意味着我需要一些东西来设置php.ini。有人可以给我一些指导吗?


答案 1

我不认为这是检测的“最佳”解决方案,因为浏览器支持您的网站所需的内容:

  • 首先,浏览器可以撒谎 - 他们可以发送任何想要的东西User-Agent
    • 即使给定版本的支持应该支持您需要的内容,Javascript仍然可以被禁用。
  • 其次,当涉及到Javascript时,有更“正确”的方法来检测浏览器可以做什么或不做什么。

对于第二点,您应该测试浏览器是否真的支持您需要的内容 - 而不是依赖于诸如浏览帽之类的列表。


不过,为了回答您关于浏览帽的问题:手册页面底部一条get_browser注释,上面写着(引用):

注意:为了使其正常工作,php.ini中的浏览帽配置设置必须指向系统上文件的正确位置。 未与 PHP 捆绑在一起,但您可以在此处找到最新的 » php_browscap.ini 文件。
虽然包含许多浏览器上的信息,但它依赖于用户更新来使数据库保持最新。文件的格式相当不言自明。browscap.inibrowscap.inibrowscap.ini

因此,您必须:

  • 下载眉帽文件,
  • 并在文件中设置指令,使其指向您下载的文件。browscapphp.ini

答案 2

我知道这个话题很旧,但你可以使用这样的东西:

<noscript>JavaScript must be enabled</noscript>

以在未启用 JavaScript 时显示。