6
鑑於一個新搭腳架的Yesod應用程序,獲取可充當CGI程序的可執行文件所需的最少一組更改是什麼?包裝程序是可以接受的。如果'cabal build'構建的默認可執行文件是CGI程序,則必須設置哪些環境變量以充當CGI(默認情況下,它將綁定到端口並嘗試在那裏提供請求)。將Yesod應用程序配置爲CGI
對於FastCGI也會有同樣的答案。
鑑於一個新搭腳架的Yesod應用程序,獲取可充當CGI程序的可執行文件所需的最少一組更改是什麼?包裝程序是可以接受的。如果'cabal build'構建的默認可執行文件是CGI程序,則必須設置哪些環境變量以充當CGI(默認情況下,它將綁定到端口並嘗試在那裏提供請求)。將Yesod應用程序配置爲CGI
對於FastCGI也會有同樣的答案。
更新您的app/main.hs
有以下幾點:
import Prelude (IO, (>>=))
import Yesod.Default.Config (fromArgs)
import Yesod.Default.Main (defaultMain)
import Settings (parseExtra)
import Application (makeApplication)
import Network.Wai.Handler.CGI (run)
main :: IO()
main = fromArgs parseExtra >>= makeApplication >>= run
你需要添加wai-extra
到依賴於你的陰謀文件。若要使用FastCGI,請將Network.Wai.Handler.CGI
替換爲,並將wai-handler-fastcgi
替換爲依賴項列表。
這是否打破'yesod devel'? –
答案似乎不是! :-) –
只是爲了闡明原因:腳手架站點是作爲一個庫(基本上)提供了一個IO應用程序。然後有兩個可執行文件:'main.hs'用於生產,'devel.hs'用於'yesod devel'。所以'main.hs'的變化對開發沒有影響。 –