2016-01-20 49 views
0

我正在使用PHP storm 9在本地開發環境中運行節點實例,但該進程似乎在server.js父目錄中運行。運行在錯誤目錄中的本地節點進程

我的文件夾結構看起來像

app/ 
    app_server/ 
    server.js 
    user_resources/ 
    user_resources/ 

,當我在我的本地實例寫一個文件的應用程序寫入USER_RESOURCES /當我運行在真實環境中相同的過程將其寫入USER_RESOURCES在APP_SERVER/

使用FS WriteFile的
pdf.create(html, options).toFile(path+filename, function (err, reuslt) { 
    callback(); 
}); 

,READFILE或READDIR使類似行爲

本地節點服務器我跑了PHPstorm和實時服務器運行W¯¯永遠是

本地和live都是一個ubuntu系統。

任何建議爲什麼本地節點似乎在server.js父目錄中運行。

+0

您確定該流程是從生產環境和本地環境中的相同目錄啓動的嗎?詢問是因爲'cd app/app_server;節點server.js'和'cd應用程序;節點app_server/server.js'有很大的不同。 –

+0

本地不是用戶,我通過直接在phpstorm中啓動phpstorm調試器來運行它。現場我用cd app/app_server;永遠啓動server.js – Jacob

回答

1

節點服務器可能由PHPStorm的app目錄執行,而實時進程從app/app_server運行。

如果在服務器代碼中沒有提供其他提示,在哪裏放置user_resources它將駐留在當前工作目錄(這是涉及節點進程的路徑)內。

您可能要指定相對於server.js的位置的路徑,這很容易做到這樣的:

var userResourcePath = __dirname + '/user_resources`; 

節點總是確保__dirname設置爲是文件的路徑英寸

我做了一個假設,你的生活環境的user_resources路徑(app/app_server/user_resources)是你想要的本地開發的路徑。

相關問題