1.使用方法
nginx配置:
server {listen 80;server_name example.com;location / {root /var/www/html;index index.html;ssi on; # 開啟 SSI 功能ssi_types text/html; # 指定哪些類型的文件啟用 SSI,默認只有 text/html}
}
html內容:
<!--#include file="header.html" -->
<p>主內容</p>
<!--#include file="footer.html" -->
這樣,訪問頁面時,Nginx 會自動把 header.html 和 footer.html 的內容插入到對應位置。
2.SSI 指令常見用法
<!--#include file="文件名" -->
包含同一目錄下的文件<!--#include virtual="/path/to/file.html" -->
包含指定路徑的文件<!--#echo var="DATE_LOCAL" -->
顯示當前服務器本地時間
3.注意事項
SSI 只對 text/html 類型的響應生效
包含的文件路徑要正確,且有讀取權限
適合小型、簡單的動態內容拼接(復雜業務建議用后端語言或模板引擎)
4.與前端模板/后端模板的區別
SSI 是服務器端拼接 HTML,但不如后端模板(如 EJS、Jinja2)強大
適合頁面片段的簡單組合,不支持復雜的邏輯
5.什么是 SSI?
SSI(Server Side Includes) 是一種輕量級的服務器端網頁動態技術。它允許你在 HTML 頁面中插入特殊的指令,服務器在返回頁面給客戶端前,會把這些指令替換為實際內容(如包含其他文件、顯示時間等)。
通俗理解:
你可以把 SSI 當作“網頁里的拼接命令”,在服務器端自動把多個內容組合成一個頁面返回給用戶。