ZKEACMS Core 是基于 .net core 开发的,可以在 windows, linux, mac 上跨平台运行,接下来我们来看看如何在 Ubuntu 上运行 ZKEACMS。

本文使用的是Ubuntu 16.04,不同的版本可能会有所差异,

查看你的Ubuntu系统版本

lsb_release -a

1. 安装 .Net Core SDK

安装.net core的SDK微软官方有详细的文档,请参考以下链接:

https://www.microsoft.com/net/learn/get-started/linux/ubuntu16-04

2. 安装nginx

我们使用nginx来做反向代理,安装nginx很简单,在SSH端输入以下命令即可。

sudo apt-get update
sudo apt-get install nginx

安装完成以后,用服务器IP访问一下,如果可以正常访问,说明nginx已经正常运行了。

3. 配置nginx

需要要设置nginx反向代理到CMS的本地监听端口,修改默认配置文件 /etc/nginx/sites-available/default

sudo vi /etc/nginx/sites-available/default

使用以下内容替换原有内容(按键盘I或者Insert开启编辑模式)

server {
    listen 80;
    location / {
        proxy_pass http://localhost:5000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection keep-alive;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

修改完成后,按ESC键退出编辑模式,然后按组合键shift+:,然后输入wq,回车进行保存。

重启nginx

systemctl restart nginx

4. 安装ZKEACMS

上传程序文件

我们将发布好的程序打包为cms.zip并上传到 /root 目录下。并解压到 /root/cms 目录下,使用以下命令解压

unzip cms.zip -d cms

具体发布发方式可以查看:http://www.zkea.net/zkeacms/document/publish/core

5. 添加服务运行ZKEACMS

添加一个zkeacms服务

sudo vi /etc/systemd/system/zkeacms.service

输入以下内容保存

[Unit]
Description=ZKEACMS

[Service]
WorkingDirectory=/root/cms
ExecStart=/usr/bin/dotnet /root/cms/ZKEACMS.WebHost.dll
Restart=always
RestartSec=10
SyslogIdentifier=zkeacms
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy=multi-user.target

注意:ExecStart=/usr/bin/dotnet /root/cms/ZKEACMS.WebHost.dll/usr/bin/dotnet为dotnet程序的路径,可以使用type或者whereis查询该路径。另外定位到cms的目录,使用pwd命令可以查出完整路径。

type dotnet

运行服务

systemctl start zkeacms

服务启动以后,就可以尝试使用域名或者IP进行访问了。

服务开机启动

设置服务开机启动,不然每一次重启服务器都要手动启动cms服务

systemctl enable zkeacms