如何在CentOS 7上安装Craft CMS

Craft CMS是用PHP编写的开源CMS。Craft CMS源代码托管在GitHub上。本指南将向您展示如何在新的CentOS 7 Vultr实例上安装Craft CMS。

要求

服务器要求

  • PHP 5.3.0-禁用安全模式的7.1.x
  • 安装了InnoDB存储引擎的MySQL 5.1.0或更高版本
  • Web服务器(Apache,Nginx,IIS)
  • 分配给PHP的内存至少为32MB
  • 至少20MB的可用磁盘空间
  • 至少1MB的数据库空间

必需的PHP扩展

  • 反射扩展
  • PCRE扩展
  • SPL扩展
  • PDO扩展
  • PDO MySQL扩展
  • Mcrypt扩展
  • 具有FreeType支持的GD扩展(除非已安装ImageMagick扩展)
  • OpenSSL扩展
  • 多字节字符串扩展
  • JSON扩展
  • 卷曲
  • 启用了BLOWFISH_CRYPT的crypt()

可选的PHP扩展

  • DOM扩展
  • iconv扩展
  • ImageMagick扩展
  • SimpleXML

在你开始之前

检查CentOS版本。

cat /etc/centos-release
# CentOS Linux release 7.4.1708 (Core)

创建一个non-root具有sudo访问权限的新用户帐户并切换到该帐户。

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

注意用您的用户名替换johndoe

设置时区。

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

确保您的系统是最新的。

sudo yum update -y

安装必需和有用的软件包。

sudo yum install -y wget vim unzip bash-completion

禁用SELinux。

sudo setenforce 0

第1步-安装PHP和所需的PHP扩展

CentOS在其默认软件存储库中未提供最新的PHP版本。我们需要添加一个Webtatic YUM存储库。有关如何执行此操作的步骤,请遵循此Vultr指南

sudo yum install -y php71w php71w-cli php71w-fpm php71w-mysql php71w-mcrypt php71w-gd php71w-mbstring php71w-json php71w-curl php71w-xml php71w-common

检查PHP版本。

php --version
# PHP 7.1.14 (cli) (built: Feb  4 2018 09:05:29) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

启动并启用php-fpm service

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

第2步-安装MariaDB并创建数据库

下载并安装MariaDB。

sudo vim /etc/yum.repos.d/MariaDB.repo

# Copy/paste this to the /etc/yum.repos.d/MariaDB.repo file

[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1


sudo yum install -y MariaDB-server MariaDB-client

检查MariaDB版本。

mysql --version && mysqld --version
# mysql  Ver 15.1 Distrib 10.2.13-MariaDB, for Linux (x86_64) using readline 5.1
# mysqld  Ver 10.2.13-MariaDB for Linux on x86_64 (MariaDB Server)

启动并启用MariaDB。

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

运行mysql_secure_installation脚本以提高MariaDB安装的安全性。

sudo mysql_secure_installation

以root用户身份登录MariaDB。

mysql -u root -p
# Enter password:

创建一个新的MariaDB数据库和用户,并记住凭据。

create database dbname;
grant all on dbname.* to 'username' identified by 'password';
flush privileges;

退出MySQL。

exit

第3步-安装和配置NGINX

安装NGINX服务器。

sudo yum install -y nginx

检查NGINX版本。

sudo nginx -v
# nginx version: nginx/1.12.2

启动并启用NGINX服务。

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

配置NGINX。运行sudo vim /etc/nginx/conf.d/craft.conf并复制/粘贴以下内容。

server {
  listen [::]:80;
  listen 80;

  server_name example.com;
  root /var/www/craft/public;

  index index.html index.htm index.php;
  charset utf-8;

  location / {
    try_files $uri/index.html $uri $uri/ /index.php?$query_string;
  }

  location ~ [^/]\.php(/|$) {
    try_files $uri $uri/ /index.php?$query_string;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param HTTP_PROXY "";       
  }
}

测试NGINX配置。

sudo nginx -t

重新加载NGINX。

sudo systemctl reload nginx.service

步骤4-下载并安装Craft CMS

创建一个文档根目录。

sudo mkdir -p /var/www/craft

/var/www/craft目录的所有权更改为johndoe

sudo chown -R johndoe:johndoe /var/www/craft

导航到文档根目录。

cd /var/www/craft

下载Craft CMS的最新稳定版本。

wget https://download.craftcdn.com/craft/2.6/2.6.3012/Craft-2.6.3012.zip

解压Craft CMS。

unzip Craft-2.6.3012.zip
rm Craft-2.6.3012.zip

告诉Craft如何连接到数据库。

vim craft/config/db.php

/var/www/craft目录的所有权更改为nginx

sudo chown -R nginx:nginx /var/www/craft

运行sudo vim /etc/php-fpm.d/www.conf并将用户和组设置为nginx。最初,它将设置为user和group apache

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

重新启动php-fpm.service

sudo systemctl restart php-fpm.service

现在已经完成所有设置,将您的浏览器指向http://example.com/admin并遵循Craft安装程序。

要访问Craft的管理界面,请附加/admin到您的IP /域。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息