如何在Fedora 30上安裝WonderCMS

如何在Fedora 30上安裝WonderCMS

WonderCMS是一個免費,開源的平面文件CMS,其目標是非常小,輕便和簡單。自2008年以來,使用PHP,jQuery,HTML / CSS進行構建。不需要初始設置。安裝過程非常簡單-解壓縮並上傳五個文件。通過將所有文件複製/粘貼到另一個位置,可以輕鬆地移動,備份和還原所有文件。如果將它們移至另一台主機,則無需重新配置。 WonderCMS也不需要像MySQL這樣的傳統/關係數據庫。藉助平面文件技術,WonderCMS可以將所有數據保存在名為JSON格式的名為database.js的文本文件(平面文件)中。在本教程中,我們將使用Nginx作為Web服務器,在Fedora 30系統上安裝並設置WonderCMS。 (可選)您可以通過使用Acme.sh客戶端和“讓我們加密證書頒發機構”添加SSL支持來保護傳輸層。

要求條件

安裝和運行WonderCMS的要求如下:

  • PHP版本7.1或更高版本,帶有curl,mbstring和zip擴展名。
  • Web服務器(Apache與 mod_rewrite 有效模塊,Nginx,IIS)。

先決條件

  • Fedora 30操作系統。
  • 非root用戶 sudo 特權。

第一步

檢查您的Fedora版本:

cat /etc/fedora-release# Fedora release 30 (Thirty)

設置時區。

timedatectl list-timezonessudo timedatectl set-timezone 'Region/City'

更新操作系統軟件包(軟件)。這是重要的第一步,它確保您具有操作系統默認軟件包的最新更新和安全修補程序。

sudo dnf update -y

安裝一些Fedora操作系統基本管理所需的重要軟件包。

sudo dnf install -y curl wget vim git unzip socat bash-completion

第1步-安裝PHP和所需的PHP擴展

安裝PHP和所需的PHP擴展。

sudo dnf install -y php-cli php-fpm php-common php-curl php-zip php-mbstring php-json

要查看編​​譯成模塊的PHP:

php -mctypecurlexiffileinfo. . .. . .

檢查PHP版本。

php --version# PHP 7.3.6 (cli) (built: May 28 2019 09:32:59) ( NTS )# Copyright (c) 1997-2018 The PHP Group# Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies

啟動並啟用PHP-FPM服務。

sudo systemctl start php-fpm.servicesudo systemctl enable php-fpm.service

第2步-安裝acme.sh客戶端並獲取一個Let’s Encrypt證書(可選)

您不需要使用HTTPS保護論壇,但是我們建議您保護網站流量。要從Let’s Encrypt獲得TLS證書,請使用acme.sh客戶端。 Acme.sh是純UNIX Shell軟件,用於獲取TLS證書,而無需來自Let’s Encrypt。

下載並安裝acme.sh。

sudo su - rootgit clone https://github.com/Neilpang/acme.sh.gitcd acme.sh ./acme.sh --install --accountemail [email protected]source ~/.bashrccd ~

檢查acme.sh版本。

acme.sh --version# v2.8.2

得到 RSAECC / ECDSA 域/主機名證書:

# RSA 2048acme.sh --issue --standalone -d example.com --keylength 2048# ECDSAacme.sh --issue --standalone -d example.com --keylength ec-256

如果您需要偽造的證書進行測試,則可以添加 --staging 以上命令的標誌。

運行上述命令後,證書和密鑰位於:

  • 對於 RSA/home/username/example.com 目錄。
  • 對於 ECC / ECDSA/home/username/example.com_ecc 目錄。

要列出頒發的證書,您可以:

acme.sh --list

創建一個目錄來存儲證書。我們將使用 /etc/letsencrypt 目錄。

mkdir -p /etc/letsecnrypt/example.comsudo mkdir -p /etc/letsencrypt/example.com_ecc

將證書安裝/複製到/ etc / letsencrypt目錄中。

# RSAacme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"# ECC/ECDSAacme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

所有證書每60天自動更新一次。

從root用戶獲取證書並退出,然後返回普通的sudo用戶。

exit

步驟3-安裝和配置NGINX

WonderCMS可與許多流行的Web服務器軟件很好地配合使用。在本教程中,選擇了NGINX。

安裝NGINX。

sudo dnf install -y nginx

檢查NGINX版本。

nginx -v# nginx version: nginx/1.16.0

啟動並啟用NGNGX服務。

sudo systemctl start nginx.servicesudo systemctl enable nginx.service

接下來,配置NGINX for WonderCMS。跑 sudo vim /etc/nginx/conf.d/wondercms.conf 添加以下配置:

server {
  
  listen 80;  listen 443 ssl;  ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;  ssl_certificate_key /etc/letsencrypt/example.com/private.key;  ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;  ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;

  server_name example.com;
  root /var/www/wondercms;

  index index.php;

  location / {
    if (!-e $request_filename) {
      rewrite ^/(.+)$ /index.php?page=$1 last;
    }
  }
  location ~ database.js {
    return 403;
  }

  location ~ .php(/|$) {
    include default.d/php.conf;
    fastcgi_pass unix:/run/php-fpm/www.sock;
  }

}

檢查NGINX配置是否存在語法錯誤。

sudo nginx -t

重新加載NGINX服務。

sudo systemctl reload nginx.service

步驟4-安裝WonderCMS

為WonderCMS創建文檔根目錄。

sudo mkdir -p /var/www/wondercms

更改所有權 /var/www/wondercms 到目錄[y[y[y[your_username]

sudo chown -R [your_username]:[your_username] /var/www/wondercms

交換[y[y[y[your_username] with the username that you are logged into the server.

轉到文檔根目錄。

cd /var/www/wondercms

下載並解壓縮WonderCMS源。

wget https://github.com/robiso/wondercms/releases/download/2.7.0/WonderCMS-2.7.0.zipunzip WonderCMS-2.7.0.ziprm WonderCMS-2.7.0.zip

將WonderCMS文件移動到文檔根目錄。

mv wondercms/* .mv wondercms/.* .rmdir wondercms

更改所有權 /var/www/wondercms 到目錄 nginx:

sudo chown -R nginx:nginx /var/www/wondercms

sudo vim /etc/php-fpm.d/www.conf 用戶和組 nginx。最初為用戶和組設置 apache:

sudo vim /etc/php-fpm.d/www.conf# user = nginx# group = nginx

建立 /var/lib/php/session/ 更改目錄和所有權 nginx:

sudo mkdir -p /var/lib/php/session/ && sudo chown -R nginx:nginx /var/lib/php/session/

重新啟動PHP-FPM服務。

sudo systemctl restart php-fpm.service

在Web瀏覽器中打開網站並使用默認密碼登錄 admin 然後更改默認密碼。

友情鏈接

Sidebar