我一直在使用docpad預生成前端html/js應用程序(使用docpad generate --env static
)。在經過幾次hangup和來自balupton的錯誤修復後,它現在效果很好,併爲我節省了很多時間。我只是將這些文件複製到現有的apache服務器上進行部署。集成express.js應用程序和docpad
我現在還創建了一個node.js/express.js後端應用程序,它使用簡單的API將數據提供給客戶端。這個代碼是獨立於上面討論的docpad/static文件生成和運行的。
我現在想整合這兩個。這通常是在docpad世界中完成的?我看到幾個選項:
1)後端和前端代碼保持分開。 Docpad用於生成前端靜態文件,然後使用單獨的後端應用程序來提供靜態文件和數據。只有靜態文件和快速應用程序被複制到服務器進行部署。
2)後端源文件與前端文件一起生成並複製到服務器進行部署。我想這與#1幾乎相同,只不過src/files目錄需要包含express.js應用程序文件,並且允許我在後端源代碼上運行預處理器。
3)我的後端應用程序requires
docpad(其產生out/
目錄,並添加docpad中間件),然後啓動服務器(類似如下所示:https://github.com/bevry/docpad/issues/342)。這樣可以簡化測試,但需要將整個項目目錄結構(src/
,out/
以及全部)複製到服務器進行部署。
我不是問具體如何做到這一點,但想知道什麼被認爲是docpad理念。我錯過了另一個選擇嗎?
謝謝。
Does http://stackoverflow.com/questions/16389994/static-vs-dynamic-content-in-docpad-system-how-to-create-dynamic-content/16390466#16390466有幫助嗎? – balupton 2013-05-06 00:19:02
你好巴魯普頓。鏈接問題中的#3關閉。我可以將自定義路由添加到docpad.coffee,但我認爲這意味着我需要部署整個docpad樹結構(與上面的#3相同)。我想最終我只想部署生成的靜態內容和一個或兩個node.js文件,以通過ajax查詢啓動靜態文件和動態內容。 – hypercubed 2013-05-07 01:55:34
問題變成了我在哪裏把服務器生成JavaScript(稱之爲'app.js')?在「docpad.coffee」旁邊的項目文件夾根目錄下或在「src /'目錄下?那麼在測試過程中,我怎麼才能使用docpad來代替內置的服務器。謝謝你的幫助。 – hypercubed 2013-05-07 01:58:23