2016-12-26 49 views
0

時,無法從我的索引頁訪問其他文件,因此我在使用(appname).c9users.io /時將我的index.pug頁放在了cloud9上。然而,我使用外部CSS和JS文件,但是當我包含CSS和JS文件時,即使它們與我的index.pug頁面位於相同的文件夾中,我也遇到了一堆404錯誤。使用Express

我認爲這可能是一些愚蠢的chmod許可錯誤,我沒有設置cloud9環境的權利,但事實並非如此。只是提出這個問題,因爲我作爲一個快速新手浪費了一大筆時間。

+0

發現這就是一個鏈接http://stackoverflow.com/questions/5924072/express-js-cant -get-my-static-files-why?rq = 1 – swyx

+0

同樣相關:[加載資源在express中](http://stackoverflow.com/questions/34505215/loading-resources-in-express/34506377#34506377)和[css和jss文件未加載](http://stackoverflow.com/questions/39341995/at-node-express-execution-css-and-js-files-are-n-loading/39342125#39342125) – jfriend00

回答

0

正確的答案是我忘了設置其他文件的路由。即

app.use('/public', express.static(process.cwd() + '/public')); 

更長的形式說明,請參見http://www.clementinejs.com/tutorials/tutorial-beginner.html#AddingAdditionalElementstoIndex.html

希望這有助於將來我是

+0

是的。這聽起來像你沒有意識到Express默認服務於NO文件。必須有一條覆蓋您希望Web服務器提供的每個文件的路徑。正如您發現的那樣,您可以使用帶有'express.static()'的路線來覆蓋給定目錄中的所有文件。 – jfriend00

+0

我認爲,因爲我已經定義了'/'路由到index.pug它將提供與我的index.pug相同的文件夾中的所有文件,但這是一個可憐的假設。只是把它扔在SO上來幫助像我這樣的未來娃娃 – swyx