(SSI)を含むサーバーサイドのnginxを構成するには、nginx構成ファイルを変更する必要があります。これがそれを行う方法に関する段階的なガイドです:
/etc/nginx/nginx.conf
にあるか、 /etc/nginx/sites-available/
directory内にあります。サーバーまたはロケーションブロックでSSIを有効にします。
ssi
指令を適切なサーバーまたはロケーションブロックに追加する必要があります。これがロケーションブロックでそれを行う方法の例です:
<code class="nginx">location / { ssi on; }</code>
SSIファイルのMIMEタイプの構成:
どのファイルタイプをSSIで処理するかを指定することをお勧めします。 http
ブロックに次の行を追加して、 .shtml
ファイルのSSIを有効にします。
<code class="nginx">http { ... ssi_types text/shtml; }</code>
nginxを再起動:
これらの変更を行った後、nginxを再起動またはリロードして適用する必要があります。次のコマンドでこれを行うことができます。
<code class="bash">sudo systemctl restart nginx</code>
または
<code class="bash">sudo nginx -s reload</code>
これらの手順を使用すると、nginxをサーバー側を処理するように構成する必要があります。
サーバーサイドの使用(SSI)を含むnginxを含むことは、正と負のパフォーマンスの両方の意味を持つことができます。
プラスの影響:
マイナスの影響:
全体として、SSIのパフォーマンスへの影響は、使用シナリオに大きく依存します。多くの静的なものを含むサイトの場合、利点はコストを上回る可能性がありますが、動的なコンテンツの場合、潜在的なパフォーマンスの問題を軽減するために慎重な計画が必要です。
はい、Nginxを使用してSSIを使用して動的なコンテンツを含めることができますが、留意すべきいくつかの考慮事項があります。
CGI/スクリプトには、スクリプトまたはCGIによって生成された動的コンテンツを含めるには、 <!--#include virtual="path/to/script" -->
ができます。例えば:
<code class="html"><!--#include virtual="/cgi-bin/dynamic_content.cgi" --></code>
FastCGIおよびSSI :NginxのFastCGIモジュールを使用して、PHPなどのスクリプトを実行し、SSIを使用して出力を含めることができます。 FastCGIとSSIを組み合わせた構成の例は次のとおりです。
<code class="nginx">location / { ssi on; include fastcgi_params; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; }</code>
HTMLファイルでは、次を使用します。
<code class="html"><!--#include virtual="/path/to/php/script.php" --></code>
SSIを使用して動的なコンテンツを含めると、サーバー構成に複雑さの層が追加され、パフォーマンスに影響を与える可能性があります。動的なコンテンツ生成が、サイトのパフォーマンスに悪影響を及ぼさないように効率的であることを確認してください。
NginxのSSIのトラブルシューティングの問題に体系的にアプローチすることができます。いくつかの一般的な問題とその解決策は次のとおりです。
SSIが機能していない:
ssi on;
サーバーまたはロケーションブロックで正しく設定されています。ssi_types
にリストされていることを確認します。SSIは解析しません:
/var/log/nginx/error.log
で)を確認してください。含まれていない動的コンテンツ:
パフォーマンスの問題:
top
やhtop
などのツールを使用して、CPUとメモリ使用量を監視します。高い使用量は、非効率的なSSI処理を示している可能性があります。キャッシュの問題:
これらの手順に従って、関連するログをチェックすることにより、NginxのSSIとの一般的な問題を診断および解決できるはずです。
以上がサーバーサイドを含む(SSI)のnginxを構成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。