2016-02-11 100 views
0

我正在部署一個簡單的node.js應用程序,並將Apache用作Web服務器。我正確安裝了Apache,並且我在httpd.conf文件中更改的唯一內容是DocumentRoot和Directory。我將這些指向了我的節點應用程序的目錄。我重新啓動apache,當我去公共IP時,我只能看到apache測試頁面?但是,如果我捲曲的私人IP地址..與端口擴展名(:8000)比它返回我的應用程序的索引頁。我如何讓Apache將請求發送到正確的端口?使用Apache移植部署Node.js應用程序

編輯︰如果我捲曲只是私人IP地址它返回Apache測試頁的HTML。

回答

0

你將Apache的請求代理給Node,而不是直接讓Apache調用node命令(就像你用PHP做的那樣)。

你可以像這樣與配置做到這一點:

ProxyPass /app http://127.0.0.1:8000 

這意味着如果你去https://www.example.com/app那麼你將調用您的節點服務。

你當然可以使用ProxyPass /所有的東西都放到你的節點服務上,但是大多數人發現最好讓Web服務器處理靜態頁面和資源(就像它擅長的那樣),然後讓節點返回動態內容 - 要麼直接返回HTML,要麼只是以JSON格式返回數據,而使用該數據前端JavaScript。

相關問題