当 LAN 没有互联网连接时,smarty 加载时间太长

smarty loading time too long when LAN has no internet connection

我有以下情况:

我正在使用 PHP Smarty 和 Xajax 开发一个管理 Web 系统。 除了编写代码时常见的错误外,我在开发时没有遇到任何问题或问题,但我正在解决这些问题。

DB 和 Apache 服务器所在的 LAN 可以访问 Internet,网站的行为符合预期。

两天前,我正在使用的 LAN 被阻止访问 Internet,以测试其他系统行为并尝试重现未来的生产环境,我注意到我正在使用的系统,就在那一刻on 的加载时间很长,它加载了但需要很长时间,大约 30 秒或更长时间,而以前,通过互联网访问,它会立即加载。

发现后,我告诉网络管理员让这个局域网重新上网,加载时间恢复正常,之后那个局域网又没有网络,加载时间又很长。

我在每个 php 文件的包含文件中的聪明配置是:

$smarty = new Smarty();
$smarty->cache_lifetime = 300;
$smarty->template_dir = "templates";
$smarty->compile_dir = "lib/smarty/templates_c";
$smarty->cache_dir = "lib/smarty/cache";
$smarty->config_dir = "lib/smarty/configs";

因为我在内部 LAN 中有 Mysql 服务器和 Apache 服务器,所以不应该有任何连接问题,那么为什么会发生这种情况?

我希望遇到过类似情况的任何人都可以给我任何提示,说明为什么会发生这种情况以及如何解决它。

与Smarty无关。

我通过阻止 mysql 服务器中的 DNS 查找解决了这种情况。

[mysqld]
# Skip reverse DNS lookup of clients
skip-name-resolve

现在无论有没有来自 LAN 内部或外部的 Internet 连接,它都可以快速加载。