日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

nginx下使用SSI

發(fā)布時間:2023/12/20 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 nginx下使用SSI 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

主要內容

    • 什么是SSI
    • nginx開啟SSI
    • SSI常用命令
    • SSI獲取并使用查詢參數
      • 在頁面文件中獲取
      • 在nginx的配置文件中設置
      • 使用參數

什么是SSI

SSI:Server Side Include,是一種基于服務端的網頁制作技術。它的工作原理是:在頁面內容發(fā)送到客戶端之前,使用SSI指令將文本、圖片或代碼信息包含到網頁中。對于在多個文件中重復出現內容,使用SSI是一種簡便的方法,將內容存入一個包含文件中即可,不必在所有文件中重復。通過一個非常簡單的語句即可調用包含文件,此語句指示 Web 服務器將內容插入適當網頁。

nginx開啟SSI

在nginx.conf設置。三個最基本的指令:

  • ssi on;
    • 開啟ssi支持,默認是關閉的
  • ssi_silent_errors on;
    • 開啟后在處理SSI文件出錯時不輸出錯誤提示:"[an error occurred while processing the directive] "。默認是關閉的
  • ssi_types text/shtml;
    • 默認是text/html。如果需要shtml支持,則需要設置:ssi_types text/shtml。

這三行的配置可以放在nginx的三個作用域下面(http, server, location)。

location / {ssi on;... }

更多指令可參看:nginx指令文檔

SSI常用命令

命令語法如下:

<!--# command parameter1=value1 parameter2=value2 ... -->

最常用的應該是include:

<!--# include file="footer.html" --><!--# include virtual="/remote/body.php?argument=value" -->

file文件名是一個相對路徑,該路徑相對于使用 #include 指令的文檔所在的目錄。被包含文件可以在同一級目錄或其子目錄中,但不能在上一級目錄中。

virtual文件名是一個web請求路徑,當然應該是本服務器上的??梢允墙^對或相對路徑,但不能通過".."訪問上層路徑。

其它命令還是看這兒吧:nginx命令文檔

SSI獲取并使用查詢參數

獲取參數有兩種方式:

  • 在頁面文件中獲取;
  • 在nginx的配置文件中設置。

在頁面文件中獲取

在頁面中寫如下代碼取得p1和p2參數:

<!--#if expr="$QUERY_STRING = /\bp1=(?P<p1>[a-zA-Z0-9]+)/" --> <!--#endif --> <!--#if expr="$QUERY_STRING = /\bp2=(?P<p2>[a-zA-Z0-9]+)/" --> <!--#endif -->

正則表達式中的"\b"用來劃分單詞的邊界?!?P<p1>”將解析出的內容賦給變量p1。

在nginx的配置文件中設置

nginx.conf中如下代碼:

location /sjjy {ssi on;...set $p3 $arg_p3; }

可將url中的查詢參數p3的值賦給變量p3,供在頁面中使用。(在nginx中取url中?后面的變量的值是通過$arg_作為前綴獲取的。)

跟從頁面中獲取方式不同的是,當url中沒有參數p3時,通過在配置文件中給p3賦值,p3也有一個空字符串值;但通過頁面中代碼解析方式,會得到一個空值(none)。

使用參數

可以用echo命令輸出:

<!--#echo var="p1" -->

也可以在其它命令中引用:

<!--# include file="${p2}.txt" -->

總結

以上是生活随笔為你收集整理的nginx下使用SSI的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。