Untuk mengkonfigurasi Nginx untuk pelayan termasuk (SSI), anda perlu membuat pengubahsuaian ke fail konfigurasi Nginx anda. Inilah panduan langkah demi langkah mengenai cara melakukannya:
/etc/nginx/nginx.conf
atau dalam direktori /etc/nginx/sites-available/
direktori. Dayakan SSI di pelayan atau blok lokasi :
Anda perlu menambah arahan ssi
ke pelayan atau blok lokasi yang sesuai. Berikut adalah contoh cara melakukannya di blok lokasi:
<code class="nginx">location / { ssi on; }</code>
Konfigurasikan jenis mime untuk fail SSI :
Anda mungkin mahu menentukan jenis fail mana yang harus diproses oleh SSI. Tambahkan baris berikut di blok http
untuk membolehkan SSI untuk fail .shtml
:
<code class="nginx">http { ... ssi_types text/shtml; }</code>
Mulakan semula nginx :
Selepas membuat perubahan ini, anda perlu memulakan semula atau memuat semula Nginx untuk memohonnya. Anda boleh melakukan ini dengan arahan berikut:
<code class="bash">sudo systemctl restart nginx</code>
atau
<code class="bash">sudo nginx -s reload</code>
Dengan langkah-langkah ini, Nginx kini perlu dikonfigurasikan untuk memproses sampingan pelayan termasuk.
Menggunakan Server-Side Termasuk (SSI) dengan Nginx boleh mempunyai implikasi prestasi positif dan negatif:
Impak positif :
Kesan Negatif :
Secara keseluruhannya, kesan prestasi SSI sebahagian besarnya bergantung kepada senario penggunaan. Bagi laman web yang mempunyai banyak statik termasuk, faedah boleh melebihi kos, tetapi untuk kandungan dinamik, perancangan yang teliti diperlukan untuk mengurangkan masalah prestasi yang berpotensi.
Ya, anda boleh menggunakan SSI dengan nginx untuk memasukkan kandungan dinamik, tetapi ada beberapa pertimbangan untuk diingat:
CGI/Skrip Termasuk : Untuk memasukkan kandungan dinamik yang dihasilkan oleh skrip atau CGI, anda boleh menggunakan <!--#include virtual="path/to/script" -->
arahan. Contohnya:
<code class="html"><!--#include virtual="/cgi-bin/dynamic_content.cgi" --></code>
FASTCGI dan SSI : Anda boleh menggunakan modul FastCGI Nginx untuk melaksanakan skrip seperti PHP dan memasukkan output mereka menggunakan SSI. Berikut adalah contoh konfigurasi yang menggabungkan fastcgi dan ssi:
<code class="nginx">location / { ssi on; include fastcgi_params; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; }</code>
Dalam fail HTML anda, anda akan menggunakan:
<code class="html"><!--#include virtual="/path/to/php/script.php" --></code>
Menggunakan SSI untuk memasukkan kandungan dinamik menambah lapisan kerumitan ke konfigurasi pelayan anda dan boleh memberi kesan kepada prestasi. Pastikan penjanaan kandungan dinamik adalah cekap untuk mengelakkan kesan negatif terhadap prestasi tapak anda.
Masalah penyelesaian masalah dengan SSI di Nginx boleh didekati secara sistematik. Berikut adalah beberapa masalah biasa dan penyelesaiannya:
SSI tidak berfungsi :
ssi on;
ditetapkan dengan betul di pelayan atau blok lokasi anda.ssi_types
.SSI tidak menghuraikan :
/var/log/nginx/error.log
) untuk kesilapan tertentu yang berkaitan dengan pemprosesan SSI.Kandungan dinamik tidak termasuk :
Masalah Prestasi :
top
atau htop
untuk memantau CPU dan penggunaan memori. Penggunaan yang tinggi boleh menunjukkan pemprosesan SSI yang tidak cekap.Masalah cache :
Dengan mengikuti langkah -langkah ini dan memeriksa log yang berkaitan, anda harus dapat mendiagnosis dan menyelesaikan masalah umum dengan SSI di Nginx.
Atas ialah kandungan terperinci Bagaimanakah saya mengkonfigurasi Nginx untuk pelayan termasuk (SSI)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!