如何在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