如何在Ubuntu 15.04/CentOS上安装Concrete5 CMS

时间:2020-03-05 15:32:21  来源:igfitidea点击:

Concrete5是在麻省理工学院许可下发布的免费和开源内容管理系统。
它旨在为用户提供最简单的,并具有最低的技术技能。
它是在PHP编程语言中开发的,使其接口组件和站点结构是由自定义组件和来自Laravel和Symfony组件等项目的三方库构建的强大框架。
Concrete5始终跟随模型 - 视图 - 控制器开发模式,并且版本7完全接受域驱动设计。
它具有一个美丽的竞争网络生成器,如Squarespace或者Wix,为每个人的技术和非技术人员创造了一个非常容易的。
混凝土的一些令人敬畏的特征如下所列。

  • Concrete5易于使用的Wysiwyg文本编辑器。
  • 它由编辑工具列组成,它使我们能够在海浪时自定义我们的。
  • 在随时随地添加页面,在发布之前预览更改,它到处都更新
  • 它允许我们跟踪版本并比较之间的差异。
  • 它包含一个带有Picnik的批量上传和图像操作的文件管理器。

在本文中,我们将了解我们如何在运行Ubuntu 15.04或者CentOS 7 Linux发行版的计算机中设置Concrete5.

安装LEMP堆栈

首先,我们需要在运行Ubuntu 15.04或者CentOS 7中设置完整的LEMP堆栈。
它是nginx Web服务器,MariaDB数据库服务器和PHP模块的组合。
要在我们的计算机中设置LEMP堆栈,我们需要打开终端或者控制台,并根据我们正在运行的分发运行以下命令。

在Ubuntu 15.04上

# apt-get update
# apt-get install nginx mariadb-server mariadb-client php5-mysql php-pear php5-gd php5-intl php5-curl php5-xdebug php5-dev php5-xcache php5-fpm curl unzip

在CentOS 7

# yum update
# yum install nginx mariadb-server mariadb-client php-mysql php-pear php-gd php-xml php-intl php-curl phpxdebug php-dev php-mbstring php-xcache php5-fpm curl

配置MariaDB.

现在,我们需要遵循以下步骤才能配置我们的MariaDB并为数据库root用户设置密码。
要配置MariaDB并分配root密码,我们需要运行以下命令。

# mysql_secure_installation
This will ask us to enter the password for root but as we haven’t set any password before and its our first time we’ve installed mariadb, we’ll simply press enter and go further. Then, we’ll be asked to set root password, here we’ll hit Y and enter our password for root of MariaDB. Then, we’ll simply hit enter to set the default values for the further configurations.
….
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on…
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!
…
installation should now be secure.
Thanks for using MariaDB!

注意:请注意MariaDB的root密码,因为它将在以后使用它为Concrete5应用程序和将来创建数据库。

完成后,我们将通过运行以下systemctl命令来启动MariaDB服务器,因为CentOS 7和Ubuntu 15.04都带有SystemD作为默认Init系统。

# systemctl start mysql

配置PHP.

下一个。
我们将配置PHP配置文件,以便符合运行Concrete5安装的要求。
根据Concrete5的需要配置PHP将导致它可以提供的最佳性能。
为此,我们需要编辑位于/etc/php5/fpm/php.ini中的配置,使用我们喜欢的文本编辑器。

# nano /etc/php5/fpm/php.ini

使用文本编辑器打开文件后,我们需要使用以下配置来追加文件来运行Concrete5.

cgi.fix_pathinfo=0
post_max_size = 20M
upload_max_filesize = 20M
memory_limit = 128M
safe_mode = Off

创建MariaDB数据库

接下来,我们将进一步进一步了解我们的新数据库,以便Concrete5可以将数据存储在MariaDB服务器内部。
为此,我们需要首先以root用户身份登录MariaDB命令提示符。
其中我们需要输入我们在上面设置的MariaDB root帐户的密码。

# mysql -u root -p

在我们登录到MariaDB命令提示符后,我们将创建数据库,数据库用户,密码并为该数据库分配完全权限。
为此,我们需要运行以下MariaDB控制台命令。

> CREATE DATABASE concrete5db;
> CREATE USER 'concrete5user'@'localhost' IDENTIFIED BY 'Pa$$worD';
> GRANT ALL PRIVILEGES ON concrete5db.* TO 'concrete5user'@'localhost';
> FLUSH PRIVILEGES;
> EXIT;

配置nginx服务器

现在,我们将配置我们的nginx服务器并创建虚拟主机配置文件,以使我们的Concrete5站在Web服务器中运行。
为此,我们需要使用文本编辑器打开/etc/nginx/sites-available/concrete5.theitroad.com。

# nano /etc/nginx/sites-available/concrete5.theitroad.com

然后,我们将简单地将以下配置添加到文件中。

server {
listen 80;
root /var/www/concrete5.theitroad.com;
index index.php index.html index.htm;
server_name concrete5.theitroad.com;
location/{
try_files $uri $uri//index.php?$args;
}
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_index index.php;
fastcgi_pass unix://var/run/php5-fpm.sock;
include fastcgi.conf;
}
}

完成后,我们会保存文件并退出文本编辑器。

之后,我们需要通过创建新创建的nginx文件的新链接来激活配置文件/etc/nginx/site的启用/目录。
这可以通过运行以下命令来完成。

# ln -s /etc/nginx/sites-available/concrete5.theitroad.com /etc/nginx/sites-enabled/concrete5.theitroad.com

下载concrete5

我们将从官方下载页面下载最新的Concrete5即5.7版。

我们将打开下载页面并获取压缩压缩文件的链接。
然后,我们将在/TMP /目录下使用终端或者控制台中使用curl命令下载它。

# cd /tmp/
# curl -LJO https://www.concrete5.org/download_file/-/view/85780/

一旦其成功下载,我们将使用解压缩来提取它。

# unzip concrete5.7.5.6.zip

然后,我们将将整个提取的Concrete5目录移动到我们的Webroot中,我们在我们的Nginx服务器配置文件中设置为/var/www/concrete5.theitroad.com。
通过运行以下命令,我们可以执行此操作。

# mkdir -p /var/www/concrete5.theitroad.com
# mv /tmp/concrete5.7.5.6/* /var/www/concrete5.theitroad.com

修复权限和所有权

接下来,我们将修复安装路径的一些文件权限和所有权。
首先,我们将将安装目录的所有权设置为nginx进程所有者,以便nginx Web服务器将完全访问文件和目录以编辑,创建和删除。

# chown www-data: -R /var/www/concrete5.theitroad.com

启动和启用服务

我们现在将在我们的机器中开始新安装的Nginx Web,MariaDB数据库和PHP5-FPM服务。
为此,我们需要根据我们正在运行的分发运行以下命令。

在Ubuntu 15.04上

众所周知,Ubuntu 15.04用SystemD作为默认初始系统发货,因此我们需要执行以下命令以启动nginx MariaDB和PHP-FPM。

# systemctl start nginx mysql php5-fpm

启动后,我们现在将通过运行以下命令使其能够在每个系统引导中自动启动。

# systemctl enable nginx mysql php5-fpm
Synchronizing state for nginx.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d nginx defaults
Executing /usr/sbin/update-rc.d nginx enable
Synchronizing state for mysql.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d mysql defaults
Executing /usr/sbin/update-rc.d mysql enable
Synchronizing state for php5-fpm.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d php5-fpm defaults
Executing /usr/sbin/update-rc.d php5-fpm enable

在CentOS 7

同样在CentOS 7中,SystemD是默认的初始系统,所以我们将运行以下命令启动它们。

# systemctl start nginx mariadb php5-fpm

接下来,我们将使它们能够使用以下命令在Init系统的每次启动中自动启动。

# systemctl enable nginx mariadb php5-fpm
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'
ln -s '/usr/lib/systemd/system/php5-fpm.service' '/etc/systemd/system/multi-user.target.wants/php5-fpm.service'

允许防火墙

现在,我们将把我们的防火墙程序配置为允许端口80(http),以便在默认的HTTP端口IE 80中从网络中的其他机器访问我们的nginx Web服务器。

在Ubuntu 15.04上

iptables是一个流行的防火墙程序,默认情况下安装在Ubuntu分布中。
要公开端口80,我们需要在终端或者控制台中运行以下命令。

# iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# /etc/init.d/iptables save

在CentOS 7

由于CentOS 7默认安装了SystemD,它包含作为防火墙程序运行的防火墙。
要在防火墙上打开端口80(HTTP服务),我们需要执行以下命令。

# firewall-cmd --permanent --add-service=http
success
# firewall-cmd --reload
success

访问Web界面

最后,在所有内容设置并在上面的步骤中配置后,我们现在将访问Concrete5的Web安装过程。
为此,我们需要将我们的Web浏览器指向http://ip-address /或者http://theitroad.com。
在此处,在本教程中,我们将指向浏览器到http://concrete5.theitroad.com/。
完成后,我们将由Concrete5安装页面欢迎,如下所示。

现在,我们将为Concrete5 CMS选择语言。
一旦我们选择了我们的语言,我们将进一步努力继续安装。
在下一页上,安装程序将检查依赖项是否已完成。
我们可以看到,我们已经安装和配置了所有必需的依赖项,因此我们将继续进一步。

接下来,我们需要为我们的名称,管理信息输入所需的信息,我们将在我们的仪表板上登录。
然后,我们需要输入我们在上述步骤中创建的数据库登录信息。

其中我们将Server,MySQL用户名,MySQL密码和数据库名称作为LocalHost,Concrete5user,PA $$字和Concrete5dB分别输入,我们在上面配置了。

一旦完成,我们会看到进度列,向我们展示了混凝土的安装。
一旦完成,我们将受到以的主页登录为管理员。
然后,我们可以根据我们的需求和愿望自定义我们的。

要将管理员或者用户登录到仪表板中,我们需要将浏览器指向http://concrete5.theitroad.com/index.php/login,因为我们可以在下面看到。