现在的位置: 首页 > Vultr教程 > 正文

在CentOS 7上一键安装SilverStripe CMS 

2018年02月14日 Vultr教程 ⁄ 共 4681字 ⁄ 字号 在CentOS 7上一键安装SilverStripe CMS 已关闭评论 ⁄ 阅读 1,237 views 次

 

SilverStripe是一个灵活的、可扩展的免费开放源码企业级内容管理系统(CMS)。它很容易使用和学习,非常健壮和安全,具有优秀的可重用的优化和可读的代码,并且包括一个强大的模板引擎,使得创建网站变得简单而快捷。

开始前:

使用SSH访问的一个干净的Vultr CentOS 7服务器实例。

非根sudo用户

步骤1:更新CentOS系统

在安装CentOS服务器实例上的任何包之前,我们将首先更新系统。

使用非根sudo用户登录到服务器并运行以下命令。

sudo yum -y update

步骤2:安装Apache Web服务器

安装Apache web服务器。

sudo yum -y install httpd

然后使用systemctl命令启动并启用Apache在启动时自动执行。

sudo systemctl enable httpdsudo systemctl start httpd

现在我们需要确保已经加载了mod_rewrite Apache模块。我们可以通过在CentOS Apache基础模块配置文件中搜索“mod_rewrite”来实现这一点。您可以使用任何终端编辑器,在本教程中,我们将使用vi,因为它是如此广泛可用。

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

通过在命令模式下输入/mod_rewrite(在按下“escape”键后),在vi中搜索“mod_rewrite”一词。

如果加载了mod_rewrite Apache模块,那么配置行应该是这样的。

LoadModule rewrite_module modules/mod_rewrite.so

如果上面的行从一个分号开始,您将需要删除分号来取消注释并加载模块。当然,这也适用于任何其他需要的Apache模块。

如果您使用vi编辑器,您可以通过按下“Escape”键(输入命令模式)来保存文件,然后键入:wq来对文件进行任何更改,并退出编辑器。

现在我们需要编辑Apache的默认配置文件,以便mod_rewrite能够正确地使用SilverStripe。

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

查找从开始的部分,并修改AllowOverride不允许覆盖所有内容。最后的结果(删除所有注释)应该是这样的。

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

同时,确保您的DocumentRoot指令指向正确的目录。配置选项应该是这样的。

DocumentRoot "/var/www/html"

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

我们现在需要打开默认的HTTP和HTTPS端口,因为它们将在缺省情况下被firewalld阻塞。

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

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

sudo firewall-cmd --reload

在任何配置更改之后重新启动Apache当然是一个好习惯,现在就开始吧。

sudo systemctl restart httpd

步骤3:禁用SELinux(如果启用)

SELinux代表“安全性增强的Linux”。它是Linux的安全增强,允许用户和管理员更多地控制访问控制。默认情况下,Vultr CentOS 7实例禁用了它,但是我们将介绍禁用它的步骤,以防您没有从一个干净的安装开始,而且它以前是启用的。

为了避免使用SilverStripe CMS的文件权限问题,我们需要确保SELinux是禁用的。

首先,我们来检查一下SELinux是否启用了sestatus命令启用或禁用。

sudo sestatus

如果您看到类似:SELinux状态:禁用,那么它肯定是禁用的,您可以直接跳到步骤4。如果您看到任何其他消息,您将需要完成此部分。

使用您最喜欢的终端编辑器打开SELinux配置文件。

sudo vi /etc/selinux/config

并将SELINUX=强制执行到SELINUX=禁用,然后保存文件。

要应用配置更改,SELinux需要重新启动服务器,所以您可以使用Vultr控制面板重启服务器,或者您可以简单地使用shutdown命令。

sudo shutdown -r now

当服务器重新启动时,您的SSH会话将断开连接,您可能会看到一条消息,抱怨“断开的管道”或通知您“远程主机关闭的连接”。这没什么好担心的,只需等待20秒左右,然后再次使用SSH(使用您自己的用户名和域)。

ssh example_sudo_user@example.net

或者(使用您自己的用户名和IP地址)。

ssh example_sudo_user@203.0.113.1

一旦您重新登录,您应该再次检查SELinux的状态,并使用sestatus命令来确保它是正确的禁用的。

sudo sestatus

您应该看到一条消息说SELinux状态:禁用。如果您看到一个消息说SELinux状态:启用(或类似的)您将需要重复以上步骤,并确保您正确地重启服务器。

步骤4:安装PHP 7.1

CentOS 7要求我们添加一个外部的repo来安装PHP 7.1。

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

我们现在可以安装最新版本的PHP 7.1以及SilverStripe所需的PHP模块。

sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-tidy注意:如果您正在使用PHP 7.2之类的后期版本,您可能需要修改上述PHP模块的版本号,以匹配您的PHP版本。因此,例如,如果您使用的是PHP 7.2,您可能会将模块php71w-xml更改为php72w-xml。请注意,有时模块名称会在版本之间进行更改,因此,如果您遇到任何问题,只需访问优秀的PHP文档站点进行指导,或者,或者,使用yum搜索命令搜索等价的PHP模块。php.ini 中的date.timezone配置选项必须正确设置。所以打开你的php.ini 文件和您最喜欢的终端编辑器。sudo vi /etc/php.ini将date.timezone选项设置为首选时区。例如,伦敦的实例应该是这样的。date.timezone = Europe/London

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

CentOS 7默认使用MariaDB数据库,这是一个增强的、完全开源的社区,社区开发,替代MySQL。安装MariaDB数据库。sudo yum -y install mariadb-server启动并启用MariaDB在启动时自动执行。sudo systemctl enable mariadbsudo systemctl start mariadb    安全MariaDB安装。sudo mysql_secure_installation根密码将是空的,因此当提示输入根密码时只需点击“Enter”。当提示创建MariaDB/MySQL根用户选择“Y”时,然后输入安全的根密码。简单地回答“Y”到所有其他的yes/no问题,因为默认的建议是最安全的选项。

步骤6:为SilverStripe创建一个数据库

作为MariaDB根用户登录到MariaDB shell中。sudo mysql -u root -p要访问MariaDB命令提示符,只需在提示时输入MariaDB根密码。运行以下查询,为SilverStripe创建一个MariaDB数据库和数据库用户。CREATE DATABASE ss_data CHARACTER SET utf8 COLLATE utf8_general_ci;CREATE USER 'ss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';GRANT ALL PRIVILEGES ON ss_data.* TO 'ss_user'@'localhost';FLUSH PRIVILEGES;EXIT;如果您愿意,您可以将数据库名称ss_data和username ss_user替换为您喜欢的东西。(请注意,MariaDB对CentOS 7用户名的默认最大长度是16个字符)。另外,确保你将“UltraSecurePassword”改成了一个真正安全的密码。

步骤7:安装Silverstripe CMS文件

将当前工作目录更改为默认的web目录。cd /var/www/html/如果您得到一个错误消息,说'No such file or directory',那么可以尝试下面的命令。cd /var/www/ ; sudo mkdir html ; cd html当前工作目录应该是/var/www/html/。您可以使用pwd(打印工作目录)命令来检查它。pwd现在使用wget下载SilverStripe CMS tarball。sudo wget https://silverstripe-ssorg-releases.s3.amazonaws.com/sssites-ssorg-prod/assets/releases/SilverStripe-cms-v3.6.2.tar.gz请注意:您应该通过检查SilverStripe下载页面查看最新版本。只需右键单击页面上的下载按钮并复制URL。然后可以将最上面的tarball URL粘贴到上面显示的wget命令中。列出当前目录以检查我们已成功下载该文件。ls -la现在解压tarball。sudo tar xvzf SilverStripe-cms-v3.6.2.tar.gz并更改web文件的所有权,以避免权限问题。sudo chown -R apache:apache * .htaccess再次重新启动Apache。sudo systemctl restart httpd现在我们准备好进入最后一步了。

步骤8:完整的SilverStripe CMS安装

是时候在浏览器中访问CentOS服务器实例的IP地址了。或者,如果您已经配置了您的Vultr DNS设置(并提供了足够的时间来传播),您可以简单地访问您的域。

只需输入以下数据库详细信息(或您的等效选项)到SilverStripe安装页面。Database server: localhostDatabase username: ss_userDatabase password: UltraSecurePasswordDatabase name: ss_data现在填写您的电子邮件和密码(访问SilverStripe管理部分),并设置您的默认语言。

Email: my_email@example.netPassword: AnotherUltraSecurePasswordDefault language: English UK一旦你填写了所有必要的细节,你只需点击安装SilverStripe按钮,你的新SilverStripe CMS就会成功安装。

现在,您可以开始添加内容并配置站点的外观。请务必查看SilverStripe CMS用户指南,以获得更多关于如何构建和配置站点的指导。

 

抱歉!评论已关闭.

×