侠盒 - 一个杂七杂八的分享博客，总之就是随便搭来玩的 - 开源
Flarum 是一款非常棒的开源论坛程序，在这里记录下非常详细的适用于宝塔+linux 的搭建步骤，供环境相同的同志们参考参考。1.服务器环境说明宝塔 7.0.3 或更新版本Linux Server（本文用的是 CentOs 7.4.6 64位）Apache 或者 Nginx（本文用的是 Nginx 1.16.0）MySQL 5.6+（本文使用 MySQL 5.7，原因请看下方引用）PHP 7.1+（本文 PHP-7.3）phpMyAdmin 4.72.安装宝塔 Linux 面板使用 SSH 工具，执行命令开始安装（大约2分钟完成面板安装）。Centos安装宝塔面板命令：yum install -y wget && wget -O install.sh执行安装命令，询问是否安装，回答 “ y ”安装完成会打印这些东西（面板 ip 地址、用户名、密码）：3.安装 LNMP 环境浏览器输入宝塔面板的 ip 地址。登陆账号，进入面板。{message type="success" content="首次进入面板，在弹出的“推荐安装套件”窗口中选择左侧的「LNMP 极速安装」"/}选择好 PHP 等环境的版本号，点击一键安装后，会弹出消息盒子，等待任务执行完毕即可。{callout color="#5b5fe6"}需要注意的是，在 LNMP 安装完成之后，我们还需要安装一些 PHP 的扩展（exif / fileinfo），其中 fileinfo 是必须的，否则下面 Flarum 会安装失败。exif 是图片上传所需的扩展。{/callout}进入宝塔面板 – 【软件商店】 – 【已安装】，点击 PHP 设置。选择【安装扩展】，安装 fileinfo（opcache、exif 非必选）。等待安装完毕。最后在【配置修改】中，删除 ;extension=fileinfo 中的 ;4.安装Composer更新服务器软件包使用 SSH 执行下方命令：yum update -y更新完左下角会提示 “ Complete! ”解除 PHP 函数禁用此步骤仅适用于宝塔面板用户，如您直接使用 OneinStack 一键安装服务器环境，请跳过此步。{callout color="#5b5fe6"}宝塔面板默认禁用一些安装 Composer 要用到的 3 个函数 putenv() 、 pcntl_signal() 、 proc_open()，我们需要解除禁用，否则导致步骤 4.3 Composer 变更源地址时报错、步骤 5.3 Composer 安装 Flarum 时报错。{/callout}如下图所示，进入宝塔面板，打开 PHP 设置，在【禁用函数】中，删除 putenv 、 pcntl_signal 以及 proc_open若您不取消这三个函数的禁用，则会出现以下问题：{collapse}{collapse-item label="详细信息" close}1.禁用了 putenv() 函数，会导致变更 Composer 源地址失败。2.禁用了 pcntl_signal() 函数，会导致无法执行下载 Flarum 命令。3.禁用了 proc_open() 函数，会导致安装 Flarum 报错。{/collapse-item}{/collapse}5.安装Composer使用 SSH 依次执行以下命令： # （此步骤可省略）进入当前用户家目录cd # 将安装脚本下载到当前目录php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" # 运行安装脚本php composer-setup.php --install-dir=bin --filename=composer # 删除安装脚本php -r "unlink('composer-setup.php');" # 变更全局范围内的 Composer 服务器地址：（如果您禁用了putenv() 函数，会导致此命令执行失败）。将 composer 源改成阿里云的镜像composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/6.安装 Flarum设置设置PHP配置文件：最大脚本运行时间（max_execution_time）：600脚本内存限制（memory_limit）：512M 或 1024M新建存放 Flarum 的网站前往宝塔面板 – 【网站】 – 【添加站点】，同时创建用于 Flarum 的数据库。最后提交。配置SSL证书打开站点设置，进入 SSL 选项卡页面，挑选您想要配置的安全证书方式。配置完成后，请注意开启 “ 强制 HTTPS ”！下载 Flarum{callout color="#5b5fe6"}因为 Flarum 要求安装目录必须是空目录，因此我们还需要删除刚刚新建的网站目录里的所有文件。{/callout}在 SSH 中执行： # 进入网站目录。注意网站目录每个人都不一样！记得替换！cd /www/wwwroot/example.com # 解除 .user.ini 的文件锁定，否则该文件无法被删除chattr -i .user.ini # 然后在宝塔面板中（或者在 FTP 中）删除网站目录下的所有文件，确保进入网站目录执行（前面也提到了，若您禁用了pcntl_signal() 函数和 proc_open() 函数，此步执行会出错）composer create-project flarum/flarum .执行成功后会下载 Flarum 并更新依赖包。更新依赖包会根据服务器地理位置花费 十几秒 至 三十分钟 不等的时间，请耐心等待。Flarum 以及对应的依赖安装完成应该是这个样子的：7.配置运行修改 Nginx 配置进入宝塔面板，打开站点设置，修改网站配置文件：(可对照下图修改)root：需要在路径后面加上 public，比如原本是 root /www/wwwroot/example.com;，需要修改为 root /www/wwwroot/example.com/public;。引入 Flarum 提供的伪静态配置，在 server name 下方加上 include /www/wwwroot/example.com/.nginx.conf;，网站目录不要忘记更换成自己的。修改站点配置，别忘记保存检查 Nginx 配置修改完上一步的配置，在点击保存时，宝塔会自动检查，如有错误，会保存失败并弹窗提示。伪静态配置在伪静态中输入并保存：location / { try_files $uri $uri/ /index.php$is_args$query_string; }8.Flarum 安装引导在浏览器中访问安装 Flarum 的站点网址。可以看到出现下面的情况：这是因为没有给予网站目录写入的权限，我们加一下权限即可：前往宝塔面板，点击左侧【文件】，（或者使用 SSH 工具）进入 /www/wwwroot 目录。右击您的站点目录，选择【权限】，权限修改为 755 权限并保存。不要忘记勾选 “ 应用到子目录 ”。接着刷新一下论坛网页就好了，根据图片提示填写好论坛信息。数据库名、数据库用户名、数据库密码都可以在宝塔面板查看。填写完数据库信息、管理员信息，点击安装即可。安装部署部分到此结束。