需要但未授予对 216.34.181.97 的 http 访问会减慢 phpmyadmin

Posted

技术标签:

【中文标题】需要但未授予对 216.34.181.97 的 http 访问会减慢 phpmyadmin【英文标题】:Required but not granted http access to 216.34.181.97 slows phpmyadmin down 【发布时间】:2013-09-16 22:47:15 【问题描述】:

我使用最近安装的 phpmyadmin 4.0.5 来管理具有相当严格防火墙的服务器上的数据库。

在防火墙日志中,我看到 phpmyadmin 尝试打开到地址 216.34.181.97 的 http 连接 - 该地址属于 sourceforge。可能需要此连接来查找和显示更新信息。

现在困扰我的是:

当我通过防火墙阻止此连接时,当我直接在登录后想要列出数据库的所有表时,phpmyadmin 大约 1 分钟没有反应。在“等待时间”之后,一切都再次按预期运行。

当我允许到 216.34.181.97 的 http 连接时,phpmyadmin 的初始速度不会降低。这可以重现。

我在一些互联网论坛上看到了一些关于 phpmyadmin 的类似初始减速的问题 - 但这些问题从未得到充分回答。

所以我在这里发布一些问题:

问题 1: http 连接是否仅用于查找更新???还是有更多的事情发生??

问题 2: 有人可以确认 phpmyadmin 的描述行为吗?

问题 3: 在未来的版本中,phpmyadmin 开发人员是否应该对这个初始自动试验以连接到 sourceforge 进行不同的处理?至少它不应该在登录后延迟用户交互......

问题 4: 是否有参数设置可以消除连接到 sourceforge 的试用?

【问题讨论】:

虽然 IP 归 SourceForge 所有。 PMA 可能正在尝试连接到 phpmyadmin.net(托管在同一 IP 上)。刚试了下,连不上,很奇葩! 同时我自己找到了问题 4 的答案:$cfg['VersionCheck'] = false;见:wiki.phpmyadmin.net/pma/Config#VersionCheck 【参考方案1】:

    只是为了版本检查

    确认

    有一个参数可以绕过版本检查:https://phpmyadmin.readthedocs.org/en/latest/config.html#cfg_VersionCheck

此外,版本检查可以通过代理完成,请参阅https://phpmyadmin.readthedocs.org/en/latest/config.html#cfg_VersionCheckProxyUrl 和后面的参数。

【讨论】:

还没有尝试代理解决方案。但是,$cfg['VersionCheck'] = false;工作并解决我的问题。尽管如此,我的一般建议是 phpmyadmin 开发人员中的某个人更改了版本检查的完成方式 - 以避免登录后用户活动的延迟。也许可以由 Ajax 完成 .. 验证应该是异步完成的,见 js/functions.js 在第 3172 行。 嗯,奇怪。 (非常)简短地了解了 JQuery $.getJSON (Ajax) 调用的回调函数。不明白为什么它应该停止一切,以防连接没有建立。我自己在 PHP/JS 项目中经常使用 $.getJSON;它通常可以工作。但这给了我一个想法,如果我有时间可以测试在哪里以及测试什么。所以感谢您对相关javascript代码位置的提示。【参考方案2】:

$cfg['VersionCheck'] = false; 添加到“config.inc.php”文件中,似乎并不能解决问题。 您可以随时删除 - 或注释掉 - 直接在“config.default.php”文件中负责的代码,但我不建议这样做。 我发现避免 OP 问题的最佳方法是将“vendor_config.php”文件中的 VERSION_CHECK_DEFAULT 定义更改为 false,define('VERSION_CHECK_DEFAULT', false); 因此当“config.default”中的以下代码.php" 检查它

if (defined('VERSION_CHECK_DEFAULT')) 
    $cfg['VersionCheck'] = VERSION_CHECK_DEFAULT;
  else 
    $cfg['VersionCheck'] = true;

“VersionCheck”将被分配为“false”,跳过与 216.34.181.97 的连接。我已经在 Windows 上测试过,但它应该同样适用于 *nix 系统。

【讨论】:

以上是关于需要但未授予对 216.34.181.97 的 http 访问会减慢 phpmyadmin的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio 中未授予 Action_Call 权限

ASP.NET 登录以授予对特定类型人群的访问权限

授予对 SQL 数据库的权限

如何授予所有用户对我的应用程序创建的文件的完全权限?

在 C++ 中声明但未定义的静态函数

授予对 Teradata 中所有表和视图(包括 dbc)的选择和读取权限