0

次のような状況があります。

PHP Smarty と Xajax を使用して管理 Web システムを開発していました。コードを書くときの通常のミス以外の開発では問題や問題はありませんでしたが、外出先でそれらの問題を修正していました。

DB と Apache サーバーがある LAN にはインターネット アクセスがあり、Web サイトの動作は期待どおりでした。

2 日前、私が取り組んでいた LAN は、他のシステムの動作をテストし、将来の実稼働環境を再現しようとするために、インターネットへのアクセスがブロックされました。ロード時間、ロードはかなり時間がかかりますが、以前はインターネットアクセスがあれば、すぐにロードしていました.30秒以上かかります.

これに気づいた後、ネットワーク管理者にこの LAN からインターネットへのアクセスを再度許可するように伝えたところ、ロード時間は通常に戻りました。その後、その LAN には再びインターネットがなく、ロード時間は非常に長くなりました。

すべてのphpファイルに含まれるファイルにある私のsmarty構成は次のとおりです。

$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 サーバーがあるため、接続の問題は発生しないはずですが、なぜこれが発生するのですか?

同様の状況に直面したことがある人が、なぜこれが起こっているのか、そしてそれを解決する方法についてのヒントを教えてくれることを望んでいました.

4

1 に答える 1

0

Smarty とは関係ありませんでした。

mysql サーバーで dns ルックアップを防止することで、この状況を解決しました。

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

LAN の内部または外部からのインターネット接続の有無にかかわらず、高速かつ適切にロードされます。

于 2017-03-22T16:02:23.123 に答える