在 windows iis 下部署CmsWing


在windows下安装nodejs

在nodejs官网 https://nodejs.org/en/ 下载nodejs,下载完成后,双击安装程序,按照提示安装。

上传项目到服务器

上传项目目录下的这些文件到服务器网站目录下。

  • src

  • view

  •  www

  • .gitignore

  • .thinkjsrc

  •  LICENSE

  • package.json

  • README.md


比如网站目录为  E:\nodejs,那么上传后是这样的。

image.png

配置数据库文件

找到src/common/db.js 文件,修改成自己的数据库信息。

导入数据库文件

将项目目录下的cmswing.sql文件,导入到数据库。

安装依赖

在项目跟目录运行 npm install 

image.png

如果太慢,可使用淘宝源进行安装

npm install --registry=https://registry.npm.taobao.org --verbose

运行项目

在项目目录下执行命令 npm start,如果能看到类似下面的内容,表示服务启动成功。

[2015-09-21 20:21:09] [THINK] Server running at http://127.0.0.1:8360/
[2015-09-21 20:21:09] [THINK] ThinkJS Version: 2.0.0
[2015-09-21 20:21:09] [THINK] Cluster Status: closed
[2015-09-21 20:21:09] [THINK] WebSocket Status: closed
[2015-09-21 20:21:09] [THINK] File Auto Reload: true
[2015-09-21 20:21:09] [THINK] App Enviroment: development

image.png


建立站点

打开 Internet 信息服务(IIS)管理器,添加网站配置如下

image.png

IIS反向代理

配置过程如下:

1.在Windows Server 2012 R2上 安装ARR,URL Rewriter组件。

  ARR3.0需要如下组件支持:Web Farm Framework 2.2(该组件又需要Web Platform Installer 3.0 和 WebDeploy 2.0组件的支持)

  URL Rewriter2.0(For IIS7.0,支持Win 2012 R2)直接安装即可。

  下载地址:http://www.iis.net/downloads/microsoft/application-request-routing

         http://www.iis.net/downloads/microsoft/web-farm-framework

      http://www.microsoft.com/en-us/download/details.aspx?id=7435、

 

 依次安装完如上组件后,可以在IIS控制台中看到 ARR 和 URL重写 安装成功

image.png

2.启用ARR:打开ARR,然后在右侧对其启用(使用默认设置即可)

image.png

3.配置静态资源

双击image.png,添加一条规则,配置如下:

image.png

4.配置 URL重写,对URL进行过滤,将不同的访问请求(根据URL(DNS中的配置)进行过滤)定向到相应的站点

image.png

该设置表明只有HTTP_HOST为lvoo.net/*.lvoo.net的URL才能通过该规则,如果绑定了多个域名,可以根据多次增加或者通过正则表达式的 | 来间隔

     image.png

{R:1}表示了Match Url 中的第一个匹配括号

配置完成后如下图:

image.png

在外部访问 lvoo.net 和www.lvoo.net 可以访问成功。

通过配置web.config文件,也可以实现 URL重写,如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>  
<security>  
      <requestFiltering>  
      <requestLimits maxQueryString="4080" />  
      </requestFiltering>  
</security>  
        <rewrite>
            <rules>
                <rule name="ddd" stopProcessing="true">
                    <match url="^(upload\/|backup\/|static\/|[^\/]+\.(?!js|html)\w+$)" />
                    <action type="None" />
                </rule>
                <rule name="aaa">
                    <match url="^(.*)" />
                    <conditions>
                        <add input="{HTTP_HOST}" pattern="lvoo.net$" />
                    </conditions>
                    <action type="Rewrite" url="http://127.0.0.1:8360/{R:1}" />
                    
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>


使用NSSM管理服务

使用nssm在windows服务器上部署nodejs


网站导航