【解決方法】Apache/PHP 圧縮が機能しない


こんにちは

申し訳ありませんが、これは進めていく中で考えていることなので、明白なことを述べたり、述べるべきことを述べなかったりするかもしれません。 ここは質問するのに適切な場所ではないかもしれませんが、暇なときにこれを解決しなければならなかった他の開発者がここにいるのではないかと思います。

CentOS v7.9.2009 標準 kvm を実行しているホストされた Linux サーバーにアプリケーションをデプロイしました。whm、cpanel、putty、および ftp を介してこれに完全にアクセスできます。

アプリケーションのフロントエンドは php でコーディングされ、バックエンドは Java でコーディングされ、両方とも一連の mysql データベースにアクセスします。 私はJavaですが、phpはまったく知りません。

Apache deflate を有効にしようとしています。 私は以下をガイドとして使用しています。

Attention Required! | Cloudflare

これは実際に重要です。私たちはジンバブエをターゲットにしようとしていますが、彼らのインターネットが実際にどれほど遅く、高価で、厄介であるかを今やっと理解しました。

私が試したこと:

WHM にアクセスして EasyApache を見ると、Apache 2.4 が使用されており、mod_deflate パッケージが有効になっていることがわかります。

filezilla を起動し、.htaccess に移動します。 これを自分のマシンにプルし、AddOutputFilterByType DEFLATE 行をすべて含めるように編集します。重要な行は text/html です。 アップロードし直します。

最初はそのガイドにリンクされている pingdom サイトを使用してテストしましたが、後で PowerShell から wget を使用し、Content-Encoding:gzip という行を探しました。

また、Chrome を使用してシステムにログインし、開発者ツール ビューも確認しました。 次に Wireshark を開始し、特に重いフォームに移動しました。 Wireshark を停止し、統計を確認しました。 また、サーバーに FTP でアクセスし、PHP が生成した HTML ファイルも確認しました。 生成されたファイルのサイズは 5.56Mb でしたが、7Zip を使用して圧縮すると 116kb、winzip では 200kb に縮小されました。 Wireshark トラフィックは、サーバーから 5 秒間に 1514 バイトの 6474 パケットが送信されたように見えましたが、私のマシンは 54 バイトの 6460 パケットで応答しました。 これは合計で約 9.3MB ダウン、340kb が返されます。 したがって圧縮されていません。

PHPによって生成されたHTMLは、.htaccessファイルの下のファイル構造に収まらない可能性があるため、スコープから除外されるのではないかと思います。 それは何か? PHPがHTMLを生成する場所に移動できますか?

解決策 1

与えられたリンクを見ると、これは間違った方法で行っています。PHPはバックエンドであるはずで、投稿を見るフロントエンドはjavascript/jqueryです…で応答するサーバー上のリクエストに複数の負荷を追加しています。ゆっくりとした時間。 サーバーリクエストには PHP を完全に使用し、ページを「CSS」するには JavaScript を使用します。 PHP で Javascript/CSS を使用すると、ユーザーとサーバーの間でリクエストが行き来するため、速度が大幅に低下し、時間とリソースが完全に失われます。

上記は仮定に基づいています。サンプル コードをいくつか示していただければ、説明しようとしている内容が理解できるかもしれません。

コメント

タイトルとURLをコピーしました