2013-10-24 94 views
3

我正從我的雲服務器中託管幾個網站。我想爲其中一個網站的「博客」子域使用Ghost。在Windows Server 2012端口80上運行Ghost

我設法安裝Ghost和開發環境在本地主機上正常工作。然而,目前運行在2365端口上的生產環境開放時間爲www.blog.foobar.com:2365

完全沒有問題,我需要它在剛剛

我以前做的www.blog.foobar.com打開嘗試在config.js中將端口設置爲80,並且得到錯誤:listen EACCES即使IIS中的ARR也不起作用。嘗試了谷歌搜索結果中建議的幾乎所有步驟。反向代理只是重定向子域index.js

  1. Node.js的v0.10.21 64
  2. 鬼0.3.3
  3. iisnode 64
  4. Windows Server 2012中
  5. IIS 8
  6. Firefox

我在config.js中將端口設置爲2365,就好像我將它設置爲80,它不會從a開始二。我的IIS站點綁定在端口80.

回答

6

最後在幽靈論壇的幫助下找到了它。假設你已經iisnode已經安裝和一種用於在域名註冊的子域名記錄,着手:

  1. 更改web.config到,因爲它是在Configuration File
  2. 更改config.js生產部分爲下面

    host: '127.0.0.1', port: process.env.PORT

  3. 離開bindings,因爲它是在你的子域名IIS站點設置,即80

  4. 更改ENV到productionindex.js文件,而不是development
  5. 享受博客:)
+0

鏈接要點似乎被打破...... – jbl

+1

額外的空間是罪魁禍首 – Dev

+0

我們該如何將index.js文件中的ENV更改爲生產? – user197508

1

這是我如何做了它在Windows 7

instructions are here部分。 其他是found here

安裝軟件

1)安裝node-v0.10.26-x64

2)安裝iisnode-full-iis7-v0.2.2-x64

3)冉setupsamples.bat內C:\ Program Files文件\ iisnode

安裝目錄

4)內℃下除去一切:\ Program Files文件\ iisnode \ WWW

5)提取的ghost-0.7.1內C:\ Program Files文件\ iisnode \ WWW

安裝節點模塊

6)冉Node.js的命令提示管理員

7)類型的C:

8)鍵入的CD C:\ Program Files文件\ iisnode \ WWW

9)「npm install --production」|命令來安裝NPM

10)SQLITE3沒有安裝所以不得不跑 「npm install https://github.com/mapbox/node-sqlite3/tarball/master」 進行安裝

配置

11)必須安裝url rewrite

12)改變Ç :\ Program Files \ iisnode \ www \ config.js正在開發中 url:'http://localhost/blog', port:process.env.PORT

13)仍然在C:\ Program Files \ iisnode \ www中的node.js命令提示符下鍵入「node.exe index.js」來運行它

14)從iis中刪除節點並添加應用程序博客並指出到我的目錄C:\ Program Files文件\ iisnode \ WWW

15)的添加web.config文件中C:\ Program Files文件\ iisnode \ WWW

<configuration> 
<system.webServer> 
<modules> 
    <remove name="WebDAVModule" /> 
</modules> 
<handlers> 
     <remove name="WebDAV" /> 
    <add name="iisnode" path="index.js" verb="*" modules="iisnode" /> 
    <add name="WebDAV" path="*" verb="" modules="WebDAVModule" resourceType="Unspecified" requireAccess="None" /> 
</handlers> 
<defaultDocument enabled="true"> 
    <files> 
    <add value="index.js" /> 
    </files> 
</defaultDocument> 
<rewrite> 
    <rules> 
    <rule name="Ghost"> 
     <match url="/*" /> 
     <conditions> 
     <add input="{PATH_INFO}" pattern=".+\.js\/debug\/?" negate="true" /> 
     </conditions>   
     <action type="Rewrite" url="index.js" /> 
    </rule> 
    </rules> 
</rewrite> 
<!-- 
    See https://github.com/tjanczuk/iisnode/blob/master/src/samples/configuration/web.config for information regarding iisnode specific configuration options. 
--> 
<iisnode node_env="%node_env%" loggingEnabled="false" debuggingEnabled="false" devErrorsEnabled="false" /> 
</system.webServer> 
</configuration>