# 在 Linux(CentOS) 中運行 SS CMS

本文我們將以 CentOS 為主示范如何在 Linux 操作系統中部署并安裝 SS CMS 系統,其他 Linux 版本系統安裝步驟基本一致。

# 1、安裝.NET Core 運行時

提示

SSCMS 支持 CentOS 7 和 CentOS 8,由于 CentOS 7 使用 Yum 作為包管理器,CentOS 8 使用 DNF,請根據操作系統版本分別運行以下命令。

# CentOS 7

安裝 .NET 之前,請運行以下命令,將 Microsoft 包簽名密鑰添加到受信任密鑰列表,并添加 Microsoft 包存儲庫。 打開終端并運行以下命令:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

安裝運行時

.NET Core 運行時允許運行使用不隨附運行時的 .NET Core 所開發的應用。 以下命令安裝 ASP.NET Core 運行時,這是與 .NET Core 最兼容的運行時。 在終端中,運行以下命令。

sudo yum install aspnetcore-runtime-3.1 -y

# 驗證dotnet core runtime是否安裝成功
dotnet

# CentOS 8

.NET Core 3.1 在 CentOS 8 的默認包存儲庫中提供。

安裝運行時

.NET Core 運行時允許運行使用不隨附運行時的 .NET Core 所開發的應用。 以下命令安裝 ASP.NET Core 運行時,這是與 .NET Core 最兼容的運行時。 在終端中,運行以下命令。

sudo dnf install aspnetcore-runtime-3.1 -y

# 驗證dotnet core runtime是否安裝成功
dotnet

# 2、下載并解壓 SSCMS 安裝包

創建并進入 SS CMS 系統運行的文件夾,例如我們打算在 /var/www 中運行 SS CMS:

創建并進入文件夾:

mkdir -m 777 /var/www/
cd /var/www

下載 SS CMS 安裝包,最新的產品下載地址請進入產品官網獲取:

wget https://dl.www.937047.tw/cms/7.0.0/sscms-7.0.0-linux-x64.tar.gz
# 或者
curl -O https://dl.www.937047.tw/cms/7.0.0/sscms-7.0.0-linux-x64.tar.gz

解壓安裝包至 /var/www 文件夾中并刪除安裝包:

tar -xzf sscms-7.0.0-linux-x64.tar.gz
rm sscms-7.0.0-linux-x64.tar.gz -f

# 3、安裝 Nginx

備注

如果需要可選 Nginx 模塊,則可能需要從源代碼生成 Nginx。

# 安裝nginx
yum install nginx -y

# 啟動nginx(需要先確保80端口未被其他程序占用)
systemctl start nginx

# 設為開機啟動
systemctl enable nginx

# 4、將 Nginx 設置為 SS CMS 反向代理

安裝完畢 Nginx后,請修改 /etc/nginx/nginx.conf 配置文件,在文本編輯器中打開它,并將 server 內容替換為以下內容:

# SSCMS Nginx Config ...

server {
    listen        80;
    server_name  _;
    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;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto $scheme;
    }
}

使用上述配置文件,Nginx 接受端口 80 上的流量并將請求轉接到 http://localhost:5000 中的 SS CMS。

如果希望指定域名,可以將 server_name _; 替換為 server_name example.com;,Nginx 將只匹配 example.com 上的流量并轉接到 SS CMS。

注意

未能指定正確的 server_name 指令 (opens new window)會公開應用的安全漏洞。 如果可控制整個父域(區別于易受攻擊的 *.com),則子域通配符綁定(例如,*.example.com)不具有此安全風險。 有關詳細信息,請參閱 rfc7230 第 5.4 條 (opens new window)

除此之外,由于 Nginx 默認允許上傳文件的大小是 1M,通常還需要設置 Nginx 允許上傳文件的大小:

client_max_body_size 500m;

500m表示最大上傳500M,可以根據實際需要進行設置。

完成配置 Nginx 后,運行 sudo nginx -t 來驗證配置文件的語法。

sudo nginx -t

如果配置文件測試成功,可以通過運行 sudo nginx -s reload 強制 Nginx 重新載入。

sudo nginx -s reload

# 測試 Nginx 反向代理

導航到 SSCMS 根目錄,通過命令行直接運行 SSCMS 系統:

cd /var/www
dotnet SSCMS.Web.dll

運行命令后,打開瀏覽器,訪問 http://<IP地址或域名>,如果設置無誤,瀏覽器將顯示如下界面:

SS CMS 默認頁。

Nginx 將對 http://<IP地址或域名> 發起的請求轉接到在 http://127.0.0.1:5000 中的 SS CMS 系統。如果 SSCMS 在服務器上運行,但無法通過 http://<IP地址或域名> 地址訪問,請檢查服務器的防火墻,并確認端口 80 已打開。

測試 Nginx 反向代理完成后,請在命令提示符處按 Ctrl+C 關閉 SSCMS。

# 5、將 Nginx 設置為 SS CMS 進程管理器

接下來,我們需要將 Nginx 設置為 SS CMS 的進程管理器。

# 創建服務文件

創建服務定義文件 sscms.service

sudo touch /etc/systemd/system/sscms.service

將以下內容保存至 /etc/systemd/system/sscms.service

[Unit]
Description=SS CMS

[Service]
WorkingDirectory=/var/www
ExecStart=/usr/bin/dotnet /var/www/SSCMS.Web.dll
Restart=always
# Restart service after 10 seconds if the sscms service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=sscms
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]
WantedBy=multi-user.target

保存文件并啟用服務。

sudo systemctl enable sscms.service

運行服務,并確認它正在運行。

sudo systemctl start sscms.service
sudo systemctl status sscms.service

● sscms.service - SS CMS
   Loaded: loaded (/etc/systemd/system/sscms.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2020-08-30 04:40:33 CST; 9s ago
 Main PID: 17983 (dotnet)
   CGroup: /system.slice/sscms.service
           └─17983 /usr/bin/dotnet /var/www/SSCMS.Web.dll

在配置了反向代理并通過 systemd 管理 SS CMS 后,Web 應用現已完全配置,并能通過瀏覽器從地址 http://<IP地址或域名> 進行訪問了。

至此,SSCMS 系統已經在 CentOS 操作系統中部署完畢,我們可以開始正式安裝 SS CMS 系統了。

# 6、安裝 SS CMS 系統

TIP

如果在云服務器環境中安裝,請先配置安全組,確保網站地址及端口能夠被外網訪問。

打開瀏覽器,訪問地址 http://<IP地址或域名>/ss-admin/install,進入 SS CMS 系統安裝界面:

勾選我已經閱讀并同意此協議,進入環境檢測界面:

點擊下一步,進入數據庫設置界面:

在此,我們選擇 SQLite 數據庫,如果希望使用其他數據庫,請根據需要選擇,點擊下一步,進入緩存設置界面:

在此,我們選擇 默認緩存,如果希望使用Redis 分布式緩存,請根據需要選擇,點擊下一步,進入管理員設置界面:

在管理員設置界面中設置超級管理員的用戶名及密碼,設置完成后點擊下一步,系統將顯示安裝成功界面:

點擊 進入管理后臺 按鈕進入后臺,至此,SS CMS 系統安裝完畢。

上次更新: 2020/10/28 上午11:02:23
山东群英会中奖图 2021年资料大全三肖中特 辽宁快乐12任3选遗漏 秒速赛车玩法经验_Welcome 北京赛车pk10智能计划 2021年三肖单双中特 甘肃泳坛夺金走势图 重庆时时彩结果查询 极速时时彩投注网站 湖北30选5历史开奖结果 mg平台游戏娱乐 河内五分彩开奖号码 混合过关三串一挂一场 秒速飞艇怎么赢钱 英雄联盟刀塔 云南快乐10分钟开奖结 快频彩开奖结果