本文内容包括介绍以及部署教程,为了避免后续自己重新部署时教程丢失。

软件介绍

Flarum 是一款优雅简洁论坛软件

快速

不臃肿、不复杂、不过度依赖。几分钟之内构建属于自己的社区。

Flarum 基于 PHP 构建,因此很容易安装部署。界面使用 Mithril 构建,Mithril 是一个高性能的 JavaScript 框架。更少的等待,更多的交流。

  • Flarum 96 KB
  • NodeBB 244 KB
  • Discourse 953 KB
  • 所有的 JavaScript 加载时间均使用了js压缩,并开启了gzip

精美的响应式布局

如果 Flarum 的桌面版界面没有打动你的心,那么他的移动版一定会的。Flarum was born to be touched.

Flarum 不仅仅为程序员开发,而是为所有人开发的。Flarum 在设计之初就考虑了跨平台,开箱即用。并且 Flarum 的界面风格使用了 LESS,这样很容易更换主题。

强大

简约,并不简陋。
定制性、可扩展性,都集成在了 Flarum 中。

构建可扩展的软件是很困难的。值得庆幸的是,我们有多年的开发 esoTalk 和 FluxBB 的经验。Flarum 的开源架构是非常灵活的,他拥有完善的 API 和文档。

本文部署环境为Debian 11、Nginx 1.23、PHP 8.0、MySQL 5.7

一、安装宝塔

Centos安装脚本

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec

Ubuntu/Deepin安装脚本

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec

Debian安装脚本

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec

二、安装 LNMP 环境

浏览器输入宝塔面板的地址。注册并登陆账号,进入面板。

首次进入面板,在弹出的“推荐安装套件”窗口中选择左侧的「LNMP 极速安装」

选择好 PHP 等环境的版本号,点击一键安装后,会弹出消息盒子,等待任务执行完毕即可。

需要注意的是,在 LNMP 安装完成之后,我们还需要安装一些 PHP 的扩展(exif / fileinfo),其中 fileinfo 是必须的,否则下面 Flarum 会安装失败。exif 是图片上传所需的扩展。

进入宝塔面板 – 【软件商店】 – 【已安装】,点击 PHP 设置。

选择【安装扩展】,安装 fileinfo(opcache、exif 非必选)。

等待安装完毕。

三、安装 Composer

更新服务器软件包

使用 SSH 执行下方命令:

apt update
apt upgrade

解除 PHP 函数禁用

此步骤仅适用于宝塔面板用户,如您直接使用 OneinStack 一键安装服务器环境,请跳过此步

宝塔面板默认禁用一些安装 Composer 要用到的 3 个函数 putenv() 、 pcntl_signal() 、 proc_open(),我们需要解除禁用,否则导致 Composer 变更源地址时报错。

进入宝塔面板,打开 PHP 设置,在【禁用函数】中,删除 putenv 、 pcntl_signal 以及 proc_open

安装 Composer

使用 SSH 依次执行以下命令:

   # (此步骤可省略)进入当前用户家目录

  1. cd

   # 将安装脚本下载到当前目录

  1. php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

   # 运行安装脚本

  1. php composer-setup.php

   # 删除安装脚本

  1. php -r "unlink('composer-setup.php');"

   # 全局安装 composer(配置系统环境变量)

  1. mv composer.phar /usr/local/bin/composer
  1. composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 

   # 境外服务器可以不替换

四、安装 Flarum

设置设置PHP配置文件:

最大脚本运行时间(max_execution_time):600
脚本内存限制(memory_limit):512M 或 1024M

新建存放 Flarum 的网站

前往宝塔面板 – 【网站】 – 【添加站点】,同时创建用于 Flarum 的数据库。最后提交。

务必注意!数据库字符集一定要是 utf8mb4

配置 SSL 证书

打开站点设置,进入 SSL 选项卡页面,上传你的证书或申请免费证书。

配置完成后,请注意开启 “ 强制 HTTPS ”!

下载 Flarum

因为 Flarum 要求安装目录必须是空目录,因此我们还需要删除刚刚新建的网站目录里的所有文件。

在 SSH 中执行:

   # 进入网站目录。注意网站目录每个人都不一样!记得替换!

  1. cd /www/wwwroot/example.com

   # 解除 .user.ini 的文件锁定,否则该文件无法被删除

  1. chattr -i .user.ini

然后在宝塔面板中(或者在 FTP 中)删除网站目录下的所有文件。

   # 确保进入网站目录执行(前面也提到了,若您禁用了pcntl_signal() 函数和 proc_open() 函数,此步执行会出错)

  1. composer create-project flarum/flarum .

执行成功后会下载 Flarum 并更新依赖包。更新依赖包会根据服务器地理位置花费 十几秒 至 三十分钟 不等的时间,请耐心等待。

五、配置运行

上面其实就已经安装好了 Flarum,但是还需要进一步配置才能正确运行。

修改 Nginx 配置

进入宝塔面板,打开站点设置,修改网站配置文件:(可对照下图修改)

  1. root:需要在路径后面加上 public,比如原本是 root /www/wwwroot/example.com;,需要修改为 root /www/wwwroot/example.com/public;
  2. 引入 Flarum 提供的伪静态配置,在 server name 下方加上 include /www/wwwroot/example.com/.nginx.conf;,网站目录不要忘记更换成自己的。

修改站点配置,别忘记保存

检查 Nginx 配置

修改完上一步的配置,在点击保存时,宝塔会自动检查,如有错误,会保存失败并弹窗提示。

六、Flarum 安装引导

前往宝塔面板,点击左侧【文件】,(或者使用 SSH 工具)进入 /www/wwwroot 目录。

右击您的站点目录,选择【权限】,权限修改为 755 权限并保存。不要忘记勾选 “ 应用到子目录 ”。

在浏览器中访问安装 Flarum 的站点网址。

根据图片提示填写好论坛信息。数据库名数据库用户名数据库密码都可以在宝塔面板查看。

填写完数据库信息、管理员信息,点击安装即可。
安装部署到此结束。