我試圖將兩個(Openresty)Lua web應用程序作爲來自NGINX的虛擬主機提供,它們都需要自己的唯一lua_package_path
,但很難正確地獲取配置。如果定義lua_package_path
的server
塊內[emerg] "http" directive is duplicate in example.conf
NGINX具有獨立lua_package_path變量的虛擬主機
,您會收到此錯誤:
# Failing example.conf
http {
lua_package_path = "/path/to/app/?.lua;;"
server{
listen 80;
server_name example.org
}
}
http {
lua_package_path = "/path/to/dev_app/?.lua;;"
server{
listen 80;
server_name dev.example.org
}
}
如果定義
http
兩次(每個主機),您將收到此錯誤:[emerg] "lua_package_path" directive is not allowed here in example.conf
如果您在
http
塊中定義了lua_package_path
兩次(無論如何都沒有任何意義),您將收到此消息錯誤:[emerg] "lua_package_path" directive is duplicate in example.conf
什麼是與自己lua_package_path
服務於多個(Openresty)Lua中的應用,在同一個IP和端口是虛擬主機的最佳實踐?
謝謝你的指點,真的很有幫助!我完全同意在現場環境中分離生產和開發服務器。儘管在這種情況下我有12臺虛擬主機在我的筆記本電腦上運行,但我並不認爲運行12會爲此分離虛擬服務器(或NGINX進程)。 – Gawin