Ghost Blog on IIS 10

Ghost

Ghost 是用 JavaScript 編寫的部落格平台,基於 MIT 許可證開放原始碼。Ghost 的設計主旨是簡化個人網站發布以及網上出版的過程。

Wikipedia ── Ghost_(blogging_platform)

  • Ghost 為個人部落格系統
  • 使用 Node.js 語言和 MySQL 資料庫
  • 可以使用 Markdown 和 HTML 混合編輯文章

Build Ghost on IIS 10

Preparation

Installation

  1. 安裝 rewrite/_amd64_zh-TW.msi

  2. 安裝 node-v6.11.1-x64.msi

  3. 安裝 iisnode-full-v0.2.21-x64.msi

  4. 新增站台。

  5. 將下載的 Ghost.zip 解壓縮至站台實體目錄中。

  6. 開啟 cmd 並依序執行 cd <站台實體目錄>npm install --production

  7. 在站台實體目錄上新建檔案 web.config,並鍵入以下並存檔:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
    <system.webServer>
    <httpErrors existingResponse="PassThrough" />
    <handlers>
    <add name="iisnode"
    path="index.js"
    verb="*"
    modules="iisnode" />
    </handlers>
    <iisnode node_env="%node_env%"
    loggingEnabled="true"
    nodeProcessCommandLine="%ProgramFiles%\nodejs\node.exe" />
    <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>
    </system.webServer>
    </configuration>
  8. 複製一份目錄上的 config.example.js 到同樣目錄下並命名為 config.js。

  9. 以記事本開啟檔案,將 production 中的 server->port 改為 process.env.PORT。

  10. 以記事本開啟 content/index.js,並將 development 改為 production。

  11. 開啟網頁,輸入 http://your-domain.name/ 確認是否正確設定。

  12. 完成。

Remark

References