2014-02-24 150 views
1

我在開發平臺的工作,我也有類似下面的代碼:用自己的目錄結構中的每個項目如何更改快速靜態目錄?

app.use('/public', express.static(config.directory.public)); 

的問題是,有很多(100S)。該項目將通過URL來選擇:

http://localhost/dev/accounts 

凡帳目是有自己的目錄樹和靜態公共目錄的項目。 我不想爲每個項目運行單獨的節點副本。一旦通過URL選擇了一個項目,express就需要重新配置以爲該請求提供文件。

但是,這種方法可能不可行,因爲我們可能同時在許多項目上工作。因此,每個對靜態文件的請求都必須根據項目URL進行處理。它似乎否定了靜態目錄的好處。

我想我以後是把變量進入的目錄路徑的方式

http://localhost/dev/accounts 

會樹立一個名爲PRJ =「帳戶」,然後莫名其妙定置快遞變量,以便其根目錄是「C :\ projects \「+ prj +」\ public「。 如果我只是爲每個請求發出一個新的app.use(..)語句,我想會發生不好的事情。

也許我最好是手動讀取每個靜態請求的文件內容併發回內容。 是否有另一種方法來解決這個問題?

回答

1

我不知道我是否能正確理解您的問題,但是Express會自動爲您提供文件目錄中的靜態文件。如果你有一些一堆項目的路徑/到/公共「文件夾,你只需要像做

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

這樣的話,你只需要輸入一些網址像

http://localhost/project1 

http://localhost/project2