如何在CentOS 7上安装Thilia 2.3

・9 分钟阅读

使用不同的系统?

Thelia是一个用PHP编写的开放源码工具,用于创建电子商务网站和管理在线内容,Thilia源代码托管在gitHub 上,本指南将向你展示如何在新的Centos7实例上安装Thelia 。

要求

  • PHP
  • 需要的PHP扩展:pdo_mysqlopensslintlgdcurldom
  • safe_mode off
  • memory_limit至少,最好是256M ,
  • upload_max_filesize :2M
  • 必须定义date.timezone
  • Nginx
  • MySQL/

检查CentOS版本。


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

使用sudo访问创建一个新的non-root用户帐户,并且切换到它。


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

 

启用epel存储库。


sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

安装PHP

设置Webstatic YUM repo 。


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

安装PHP 7.0,以及所需的PHP扩展。


sudo yum install -y php70w php70w-cli php70w-fpm php70w-common php70w-intl php70w-mbstring php70w-xml php70w-mysql php70w-curl php70w-dom php70w-gd

检查版本。

 
php --version

 

启用和启动php-fpm


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

安装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

检查版本。


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

启用和启动MariaDB 。


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

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


sudo mysql_secure_installation

以root用户身份登录到MariaDB 。


mysql -u root -p
# Enter password:

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


CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

退出MariaDB 。

 
exit

 

步骤3安装nginx

安装Nginx 。


sudo yum install -y nginx

检查版本。


sudo nginx -v
# nginx version: nginx/1.12.2

启用和启动Nginx 。


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

配置Nginx ,运行 sudo vim /etc/nginx/conf.d/thelia.conf 然后用下面的方法填充。


server {

 listen 80;
 server_name example.com; # Check this
 root /var/www/thelia/web/; # Check this
 index index.php;

 location / {
 try_files $uri $uri/ @rewriteapp;
 }

 location @rewriteapp {
 rewrite ^(.*)$ /index.php/$1 last;
 }

 location ~ ^/(index|index_dev).php(/|$) {
 fastcgi_pass 127.0.0.1:9000; # Check this
 fastcgi_split_path_info ^(.+.php)(/.*)$;
 include fastcgi_params;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 }

 # ###################################################
 # After installation remove /install/ location block.
 # and restart Nginx
 # ###################################################
 location /install/ {
 alias /var/www/thelia/web/install/; # Check this
 location ~ ^/install/.+.(jpg|jpeg|gif|css|png|js|pdf|zip)$ {
 expires 30d;
 access_log off;
 log_not_found off;
 }
 location ~ ^/install/(.+.php)$ {
 alias /var/www/thelia/web/install/$1; # Check this
 fastcgi_pass 127.0.0.1:9000; # Check this
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include fastcgi_params;
 }
 }
 # ###################################################

}

测试配置。

 
sudo nginx -t

 

重新加载Nginx 。


sudo systemctl reload nginx.service

安装Thelia

导航到/var/www目录。

 
cd/var/www

 

下载最新版本的Thelia并解压缩。


sudo wget https://thelia.net/download/thelia.zip
sudo unzip thelia.zip
sudo rm thelia.zip
sudo mv thelia_2.3.4/ thelia

转到Thelia目录。

 
cd/var/www/thelia

 

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


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

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


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

运行sudo vim/etc/php.ini并将post_max_size设置为米。

 
post_max_size =20M

 

重新启动php-fpm


sudo systemctl restart php-fpm.service

创建/var/lib/php/session目录并将它所有权更改为用户nginx


sudo mkdir -p /var/lib/php/session
sudo chown -R nginx:nginx /var/lib/php/session

在你喜欢的浏览器中,导航到http://example.com/install,并且按照Thelia安装向导进行操作,要访问Thelia管理界面,请将/admin附加到你的网址。

安装Thelia后,删除web/install目录。


sudo rm -rf /var/www/thelia/web/install

Vera profile image