Nginx

Nginx如何通過lua模組os執行頁面載入時執行shell腳本,然後提供目錄列表?

  • April 21, 2017

所以我有一個 bash 腳本,我想在 url 的每個“頁面載入”上執行/執行,以便它將修改(創建符號連結)到/public/html/ 我希望伺服器隨後服務的文件夾。

問題是我想出瞭如何做一個或另一個而不是兩者。

我可以使用 nginx root/public/html/ 等顯示目錄,或者我可以通過使用而不是 root 來執行腳本/public/html/

content_by_lua("/myscript.sh")';

但是,如果我通過 lua 使用內容,腳本會執行並在其中創建我需要的內容,/public/html但 Nginx 然後只會顯示一個空白螢幕。我想要一種方法讓 nginx/public/html在執行myscript.shusing後實際顯示目錄列表content_by_lua

由於這項任務,我剛剛開始使用 nginx,並且不知道如何執行此操作,我確實搜尋過,但對於Google或這裡來說,這不是一個容易表達的問題。

也許我只是想通了?我添加了 ngx.redirect("/"); 因此,我的 nginx.conf 中有一個 / 位置為 /public/html/ ,還有一個:

   location /lua {
   default_type text/plain;
   content_by_lua '
   os.execute("/myscript.sh")
   return ngx.redirect("/")';

我寧願只選擇一個“位置”而不是像那樣使用重定向,但至少我有一些似乎可行的東西。歡迎改進。

引用自:https://serverfault.com/questions/679180