如何在Fedora 26VPS上安装BlogoText CMS

・18 分钟阅读

使用不同的系统?

BlogoText CMS是一个简单,轻量级,免费和开源内容管理系统(CMS )和极简博客引擎,BlogoText CMS功能内建在RSS源中,链接共享,拖放图像和文件upload,JSON/ZIP/HTML导入和导出,以及Wordpress导入,对于那些喜欢采用更简约的博客和开发者来说,BlogoText是更好选择。

在本教程中,我们将使用ApacheWeb服务器PHP7 1和Mariadb数据库在Fedora26 VPS上安装BlogoText CMS 。

前提条件

  • 一个干净的Fedora 26服务器实例,有SSH访问权限,

步骤1:添加sudo用户

我们将从添加一个新的sudo用户开始。

首先,作为root登录到服务器:


ssh root@YOUR_VULTR_IP_ADDRESS

添加一个名为user1 (或你的首选用户名)的新用户:

 
useradd user1

 

接下来,为user1用户设置密码:

 
passwd user1

 

现在检查/etc/sudoers文件以确保启用了sudoers组:

 
visudo

 

查找这样的部分:


%wheel ALL=(ALL) ALL

确保未注释,这一行告诉我们是wheel组成员的用户可以使用sudo命令获得root权限。

编辑完文件后,可以按Esc保存,并且退出,然后输入:wq到\\\"写入\\\"和\\\"退出\\\"

接下来,我们需要将user1添加到wheel组:


usermod -aG wheel user1

可以验证user1组成员身份,并检查usermod命令是否与groups命令一起使用:

 
groups user1

 

现在使用su命令切换到新的sudo用户user1帐户:

 
su -user1

 

命令提示将更新以指示你现在已登录到user1帐户,你可以使用whoami命令来验证:

 
whoami

 

现在重启sshd服务,以便你可以通过你刚刚创建的新的非root的 sudo用户帐户登录到ssh


sudo systemctl restart sshd

退出user1帐户:

 
exit

 

退出root帐户(它将中断你的ssh会话):

 
exit

 

你现在可以使用新的非root的 sudo用户user1帐户ssh从本地主机进入服务器实例:


ssh user1@YOUR_VULTR_IP_ADDRESS

如果你希望在每次不需要键入密码的情况下执行sudo,请使用visudo再次打开/etc/sudoers文件:

 
sudo visudo

 

编辑wheel组的节,使它看起来像这样:


%wheel ALL=(ALL) NOPASSWD: ALL

请注意:禁用sudo用户的密码需求是不推荐的,但是,它可以使服务器配置更加方便,

无论什么时候要从sudo用户帐户登录到root用户帐户,都可以使用以下命令之一:


sudo -i
sudo su -

你可以退出root帐户,并通过简单地键入以下内容返回到你的sudo用户帐户:

 
exit

 

步骤2:更新Fedora 26系统

在Fedora服务器实例上安装任何软件包之前,首先要更新系统。

确保你使用非root的 sudo用户登录到服务器,并运行以下命令:


sudo dnf -y update

步骤3:安装Apache Web服务器

安装Apache网络服务器:


sudo dnf -y install httpd

然后使用systemctl命令启动,并且使Apache在引导时自动执行:


sudo systemctl enable httpd
sudo systemctl start httpd

检查Apache配置文件以确保DocumentRoot指令指向正确的目录:


sudo vi /etc/httpd/conf/httpd.conf

DocumentRoot配置选项将如下所示:


DocumentRoot\\\"/var/www/html\\\"

现在,让我们来确认mod_rewrite Apache模块已经加载,我们可以通过搜索for的\\\"mod_rewrite\\\"基本模块配置文件来实现这一点。

打开该文件:


sudo vi /etc/httpd/conf.modules.d/00-base.conf

搜索术语mod_rewrite

如果加载mod_rewrite Apache模块,你将发现一个类似这样的配置行:


LoadModule rewrite_module modules/mod_rewrite.so

如果上行以半冒号开头,则需要删除半冒号以取消注释行,并且加载模块,当然,这也适用于其他需要的Apache模块。

我们现在需要编辑Apache的缺省配置文件,以便mod_rewrite能够正确地使用BlogoText CMS 。

打开该文件:


sudo vi /etc/httpd/conf/httpd.conf

然后找到以<Directory\\\"/var/www/html\\\">开始的节,并将AllowOverride none更改为AllowOverride All最终结果(删除所有批注)的外观如下所示:


<Directory\\\"/var/www/html\\\">
 Options Indexes FollowSymLinks
 AllowOverride All
 Require all granted
</Directory>

现在保存并关闭Apache配置文件。

我们将在本教程结束时重新启动Apache,但是在安装和配置期间定期重新启动Apache是一个好习惯,


sudo systemctl restart httpd

步骤4:打开网络防火墙端口

我们现在需要打开默认的HTTPHTTPS端口,因为默认情况下它们会被firewalld阻塞。

打开防火墙端口:


sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

重新加载防火墙以应用更改:


sudo firewall-cmd --reload

在每个成功的防火墙配置命令后,你将看到在终端上显示的单词success

通过访问浏览器中服务器实例的IP地址或域,可以快速验证Apache HTTP端口是否打开:


http://YOUR_VULTR_IP_ADDRESS/

你将在浏览器中看到默认的Apache网页。

步骤5:禁用SELinux

SELinux代表\\\"安全增强Linux\\\",它是对Linux的安全增强,允许用户和管理员对访问控制进行更多控制,在Fedora26中,它是默认启用的,但是,对于服务器安全来说,它不是必需的,因为许多Linux服务器发行版在默认情况下都没有安装或启用它。

为了避免BlogoText CMS后面的文件权限问题,我们将禁用SELinux,现在,打开你最喜欢的终端编辑器的SELinux配置文件:


sudo vi /etc/selinux/config

SELINUX=enforcing更改为SELINUX=disabled,然后保存文件。

要应用配置更改,SELinux需要重新启动服务器,因此你可以使用控制面板重新启动服务器,也可以简单地使用shutdown命令:


sudo shutdown -r now

当服务器重新启动时,你的SSH会话将断开连接,你可能会看到一条消息,通知你有关\\\'broken pipe\\\'或,\\\'Connection closed by remote host\\\',这没什么好担心的,只需等待20秒左右,然后SSH再次返回(使用你自己的用户名和域):


ssh user1@YOUR_DOMAIN

或(使用你自己的用户名和IP地址):


ssh user1@YOUR_VULTR_IP_ADDRESS

一旦你重新登录,你应该使用sestatus命令再次检查SELinux的状态,以确保它已被正确禁用:

 
sudo sestatus

 

你应该会看到一条消息说SELinux status: disabled如果你看到SELinux status: enabled (或者类似的东西)的消息,则需要重复上述步骤,并且确保正确重启服务器。

步骤6: Install PHP 7.1

现在我们可以安装PHP 7.1以及BlogoText CMS所必需的所有必要的PHP模块:


sudo dnf -y install php php-mysqlnd php-mbstring php-gd php-common php-pdo php-pecl-imagick php-xml php-zip

步骤7:安装MariaDB (MySQL )服务器

CentOS 7默认使用MariaDB数据库服务器,这是一个增强的,完全开源的,社区开发的,直接替代MySQL服务器。

安装MariaDB数据库服务器:


sudo dnf -y install mariadb-server

启动并启用MariaDB服务器在引导时自动执行:


sudo systemctl enable mariadb
sudo systemctl start mariadb 

保护你的MariaDB服务器安装:


sudo mysql_secure_installation

root密码为空,因此在提示输入root密码时,只需输入。

当提示创建MariaDB/mysql root用户时,选择\\\"y\\\"(是),然后输入一个安全的root密码,简单回答\\\"y\\\",默认建议是最安全的选择。

步骤8:为BlogoText CMS创建数据库

运行以下命令,以MariaDB root用户身份登录到MariaDB shell :


sudo mysql -u root -p

要访问MariaDB命令提示,只需在提示时输入MariaDB root密码。

运行以下查询,为BlogoText CMS创建MariaDB数据库和数据库用户:


CREATE DATABASE blogo_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER \\\'blogo_user\\\'@\\\'localhost\\\' IDENTIFIED BY \\\'UltraSecurePassword\\\';
GRANT ALL PRIVILEGES ON blogo_db.* TO \\\'blogo_user\\\'@\\\'localhost\\\';
FLUSH PRIVILEGES;
EXIT;

如果愿意,你可以将数据库名blogo_db和用户名blogo_user替换为更符合你喜好的,另外,确保你用一个安全的密码替换\\\"UltraSecurePassword\\\"

步骤9:安装BlogoText CMS文件

将当前工作目录更改为默认的网络目录:

 
cd/var/www/html/

 

如果你得到一条错误消息\\\'No such file or directory\\\'然后尝试以下命令:


cd /var/www/ ; sudo mkdir html ; cd html

现在你的工作目录为:/var/www/html/ ,你可以使用pwd (打印工作目录)命令检查此命令:

 
pwd

 

现在使用wget下载BlogoText CMS安装软件包:


sudo wget https://github.com/BlogoText/blogotext/archive/3.7.6.zip

请注意:你应该通过访问BlogoText CMS下载页来检查最近的版本 。

列出要检查是否已成功下载该文件的当前目录:

 
ls -la

 

让我们快速安装unzip,以便解压文件:


sudo dnf -y install unzip

现在解压压缩归档文件:

 
sudo unzip 3.7.6.zip

 

将所有安装文件移动到web root目录中:


sudo mv blogotext-3.7.6/* /var/www/html

更改网站文件的所有权以避免任何权限问题:


sudo chown -R apache:apache * ./

重新启动Apache :


sudo systemctl restart httpd

现在我们已经准备好进入最后一步了。

步骤10 :完成BlogoText CMS安装

要访问BlogoText CMS安装页面,请在浏览器地址栏中输入实例IP地址,然后输入/admin/install.php


http://YOUR_VULTR_IP_ADDRESS/admin/install.php

大多数安装选项都是自解释的,但是,这里有一些关键点:

  1. 选择你的语言,并且单击OK按钮。

  2. 输入以下AdministratorSite详细信息:

    
    Username: admin
    Password: <admin password>
    Blog's URL: <your URL> 
    
    

    单击OK继续。

  3. 选择MySQL作为DBMS,然后输入以下数据库值:

    
    MySQL User: blogo_user
    MySQL Password: UltraSecurePassword
    MySQL Database: blogo_db
    MySQL Host: localhost
    
    

    单击OK继续。

你将被自动重定向到管理部分,所以,只需输入你的用户名和密码,然后点击Connection按钮登录,你也可以通过输入以下网址手动输入管理员地址:


http://YOUR_VULTR_IP_ADDRESS/admin

为了增加安全性,你可以更改/admin/文件夹的名称:


sudo mv -i ./admin ./top_secret_name

你现在可以开始添加内容,并且配置网站的外观。查看blogoText CMS维基页面可以获得有关如何构建和配置站点的更多信息。

圣地学子 profile image