Plus (读音:[plʌs],全称:ThinkSNS+ [θɪŋk es en es plʌs],是 ThinkSNS 系列产品一个重要版本,其软件识别名称为 Plus+) 是一个基于 Latest Laravel 框架进行开发的一个功能强大、易于开发和强拓展的社交系统。与其他开源社交程序不同的是 Plus 拥有多年社交系统经验,不仅易于上手,还便于应用拓展。另一方面,程序采用 PHP 7 严格模式,从根本上尽量避免弱级错误的产生。同时因为从零开始选择较好的带有较好 ORM 的原因,Plus 允许你更具你的需求使用不同数据库。

如果你想深入学习 Plus,我们为你准备了大量教程级文档。哪怕你不会 Laravel 框架,也能让你入门框架基础,并胜任 Plus 应用开发。

如果你是有经验的 PHPer,那么你可以了解现代流行框架差异,Laravel 就是现代流行框架的佼佼者之一。

# 服务器要求

  • CentOS8+
  • 2核4G 以上

# PHP 环境要求

重点

你可能还没有很好的 Liunx 知识,没关系,后面的教程会拟定你是零基础的前提下教学,但是下面的环境要求限制,你需要重点记忆,这是程序能否运行的关键所在!

# PHP 版本

您的 PHP 必须大于或者等于 7.4 版本(咱不支持php8),当然,我们推荐 7.4. 版本。

# 函数

在许多集成环境中,默认会禁用一些函数,当然,这些函数在 Plus 的 Web 服务中不是必须的,但是如果你在 CLI 环境下操作,这些函数将会成为必须:

  • exec
  • system
  • scandir
  • symlink
  • shell_exec
  • proc_open
  • proc_get_status

# 拓展

这些拓展是 Plus 运行时必须的拓展,你必须包装你的 PHP 环境已安装这些拓展:

  • dom 用于解析 XML 等文档使用
  • fileinfo 用于文件上传,或者获取文件 Meta 信息使用
  • GD 用于图片处理的库
  • json 一般 PHP 内核自带,用于处理 JSON 文档和转换
  • mbstring 用于兼容性的字符串处理
  • openssl 用于应用秘钥加密等,同时也是内部请求 HTTPS 资源使用
  • PDO 数据库操作抽象库
  • curl
  • exif
  • iconv
  • libxml
  • mysqlnd
  • redis
  • session
  • xml
  • zip
  • Zend OPcache

# 选择性拓展

选择性拓展是更具你的需求,选择性安装的拓展,选择性拓展如下:

  • pdo_mysql 如果你使用 MySQL 数据库,则必须安装
  • pdo_pgsql 如果你使用 PostgreSQL 数据库,则必须安装
  • pdo_sqlite 如果你使用 SQLite 数据库,则必须安装
  • pdo_dblib 如果你使用 Microsoft SQL Server 数据库,则必须安装

# 可选或替换性拓展

  • imagick 此库是一个比 GD 库处理图片更好的一个拓展,可以用于替换 GD 库,此库为可选性,安装后不可卸载 GD 库,GD 库可以用于更加高效的图片基础处理。

# 数据库

WARNING

ThinkSNS Plus 3现在支持 mysql 5.7.9+、mysql 8.x

# 教程说明

从后面的教程开始,我们将从零基础开始教学,教学环境为 CentOS 8 版本的 Linux。教学环境如下:

  • 教学使用服务器系统: CentOS 8
  • 教学者使用系统: macOS
  • SSH 工具: Termius
  • 教学 PHP 版本:7.4
  • 教学 MySQL 版本: 5.7
  • 教学 Web 组件:Nginx

教学内容包括:

  • 登入 Linux
  • 安装 PHP 7.4
  • 安装 MySQL 5.7
  • 安装 Plus
  • Nginx 安装
  • 发布站点

# 登入 Linux

这里虚拟一台主机,其 IP 地址我们假设为 hostname(正常情况下是一段 IP 地址),端口为 22,操作用户为 root

在你的 SSH 工具中输入 ssh root@hostname -p 22 然后回车。然后输入你的主机密码即可。

hostname 等信息登录的时候替换为你的真实信息。

我们进入主机后,会进入用户家目录,如果你不知道家目录在说明为主,输入 pwd 命令即可看到。