ProcessWire是免费的开源内容管理系统。 它提供了一个易于使用的灵活平台,可以完全定制。 它可以更简单,更强大的控制您的页面,字段,模板和标记在任何规模。 还包括一个全功能的API,使内容管理变得容易。
在本教程中,我们将在CentOS 7服务器上安装ProcessWire。
条件
- 最小CentOS 7服务器
- 根权限
第1步 - 安装Apache
建议在安装任何软件包之前更新服务器,以便更新现有软件包和存储库。
yum -y update
更新系统后,您可以继续安装Apache Web服务器。
yum -y install httpd
现在启动Apache Web服务器,并使用以下命令使其在启动时启动。
systemctl start httpd
systemctl enable httpd
第2步 - 安装PHP
ProcessWire支持所有版本的PHP大于5.3。 但是在本教程中,我们将安装PHP 7.1,因为PHP v5.3已经到了终点。 安装最新版本的PHP将确保应用程序的最大安全性和性能。
CentOS的默认YUM存储库没有包含PHP 7.1,因此您需要在系统中添加Webtatic存储库。 Webtatic存储库要求EPEL仓库工作。 运行以下命令安装EPEL仓库。
yum -y install epel-release
yum -y update
键入安装Webtatic存储库的命令。
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update
键入以下命令以安装PHP 7.1以及所有必需的依赖关系。
yum -y install php71w php71w-mysqli php71w-gd php71w-cli ImageMagick
要检查PHP是否安装成功,可以运行:
php -v
你应该得到类似的输出。
[root@liptan-pc ~]# php -v PHP 7.1.6 (cli) (built: Jun 10 2017 07:28:42) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
现在您需要在PHP中配置几个配置。 使用您最喜欢的文本编辑器打开PHP配置文件php.ini
。 在本教程中,我们将使用nano
编辑器。 如果没有安装nano
,可以运行yum -y安装nano
。
nano /etc/php.ini
找到以下行并取消注释行,并根据您所在的地区设置时区。 例如:
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Asia/Kolkata
第3步 - 安装MariaDB
MariaDB是MySQL数据库的一个分支。 要在服务器上安装MariaDB,请运行:
yum -y install mariadb mariadb-server
运行以下命令启动MariaDB并使其在引导时启动。
systemctl start mariadb
systemctl enable mariadb
Now run the following commands to secure your MariaDB installation.
mysql_secure_installation
上述命令将运行一个脚本来保护新鲜的MariaDB安装。 该脚本将要求现有的root用户密码,我们刚刚安装了MariaDB,root密码未设置,只需按Enter继续。
该脚本会询问您是否要为您的MariaDB安装设置root密码,然后选择y
并为安装设置一个强密码。 大部分问题是不言自明的,你应该回答所有问题的答案。 输出如下图所示。
要创建数据库,我们需要先登录到MySQL命令行。 运行以下命令相同。
mysql -u root -p
上述命令将登录到root用户的MySQL shell,它将提示输入root用户的密码。 提供登录密码。 现在运行以下查询为ProcessWire安装创建一个新的数据库。
CREATE DATABASE pw_data;
上述查询将创建一个名为pw_data
的新数据库。 如果需要,您可以为数据库使用任何其他名称。 请确保在每个查询结尾使用分号,因为查询始终以分号结尾。
创建数据库后,您可以创建一个新用户,并为数据库的用户授予所有权限。 要创建新的数据库用户,请运行以下查询。
CREATE USER 'pw_user'@'localhost' IDENTIFIED BY 'StrongPassword';
上述查询将创建一个用户名为pw_user
的用户。 您可以使用您喜欢的任何用户名而不是pw_user
。 用强大的密码替换StrongPassword
。 现在通过您创建的数据库为数据库用户提供所有权限。 运行以下命令。
GRANT ALL PRIVILEGES ON pw_data.* TO 'pw_user'@'localhost';
现在运行以下命令立即对数据库权限应用更改。
FLUSH PRIVILEGES;
使用以下命令退出MySQL提示符。
EXIT;
第4步 - 安装和配置ProcessWire
由于我们已经准备好所有的依赖项,我们现在可以从ProcessWire网站下载安装包。
cd /var/www
wget https://github.com/processwire/processwire/archive/master.zip
您可以随时在ProcessWire下载页面上找到该应用程序的最新版本的链接。 使用以下命令提取存档。
unzip master.zip
如果您没有安装unzip,可以运行yum -y install unzip
。 使用以下命令重命名您的ProcessWire文件夹:
mv processwire-master processwire
第5步 - 配置权限和防火墙
现在,您将需要使用以下命令将应用程序的所有权提供给Web服务器用户。
chown -R apache:apache /var/www/processwire
如果您正在运行,您可能还需要通过防火墙允许端口80
上的HTTP流量。 运行以下命令相同。
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload
现在,您将需要禁用SELinux,因为Proxy配置不适用于SELinux策略。 要临时禁用SELinux而不重新启动服务器,请运行以下命令。
setenforce 0
要完全禁用SELinux,您需要编辑/ etc / selinux / config
文件。
nano /etc/selinux/config
找到以下行:
SELINUX=enforcing
将其更改为:
SELINUX=disabled
现在为ProcessWire应用程序创建虚拟主机。 运行以下命令相同。
nano /etc/httpd/conf.d/cms.yourdomain.com.conf
将以下行粘贴到文件中。
<VirtualHost *:80> ServerAdmin me@liptanbiswas.com DocumentRoot "/var/www/processwire" ServerName cms.yourdomain.com ServerAlias www.cms.yourdomain.com <Directory "/var/www/processwire"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog "/var/log/httpd/cms.yourdomain.com-error_log" CustomLog "/var/log/httpd/cms.yourdomain.com-access_log" combined </VirtualHost>
将cms.yourdomain.com
替换为要用于访问应用程序的任何域或子域。 保存文件并退出编辑器。 运行以下命令重新启动Apache服务器。
systemctl restart httpd
现在使用Web浏览器完成安装,请使用您最喜爱的Web浏览器转到以下链接。
http://cms.yourdomain.com
您将受到以下页面的欢迎。
单击“开始”按钮启动基于Web的安装。 在下一个界面中选择安装配置文件。
您可以选择安装默认初学者或中间配置文件,或空白或经典配置文件。 对于初学者,您可以选择默认配置文件。 它将在您的网站上安装一个简约的响应主题。 如果您选择空白配置文件,则不会安装任何主题。 选择Classic配置文件将安装Processwire 2.3的默认主题。
在下一个界面中,您将看到所需的要求,如果您正确遵循了本教程,您将使所有的依赖项得到满足。
在下一个界面中,提供数据库的详细信息。 选择默认时区并提供您的站点的主机名。 如果您使用域名访问该网站,请输入您的域名。 你也可以把你的IP地址放在这里。
ProcessWire现在已经写了数据库。 您现在可以更改管理面板的URL。 保留私人不可猜测的网址,以便管理面板受到强力攻击。 为管理员用户提供用户名和密码。
ProcessWire现已安装,您可以访问cms.yourdomain.com上
的管理面板。
访问您的站点的后端。 转到使用管理员凭据安装和登录时选择的管理员URL。
结论
ProcessWire CMS的安装现已完成,您可以使用CMS轻松创建一个美丽的网站,用于个人或商业目的。