Oneinstack 环境安装 Flarum 轻量级论坛程序

前言

为啥要装个论坛?论坛是聚集特定用户群体的一种方式,而论坛本身也是网络站点的一种。目前,国内的论坛大多都是使用 Discuz 驱动的。Discuz 框架老旧,样式过时。这个时候,如果想要美观而且速度快的论坛程序,Flarum 一定是一个非常好的选择。

Flarum 官网:https://flarum.org

环境准备

Oneinstack 是一个建站环境一键包,包括 Nginx,Apache,PHP,Tomcat,MySQL 等等一系列的程序。

我们需要 Oneinstack 标准 Web 环境,即 Nginx + PHP + MySQL 三连。强烈不建议使用 Nginx + Apache php_mod 的架构,容易出问题。另外我们需要一个管理 MySQL 数据库的工具,如 phpMyAdmin 或者 Adminer;phpMyAdmin 是 Oneinstack 的可选选项,但是个人更加推荐使用 Adminer。当然如果你拥有足够的经验,也可以直接操作命令行。

Oneinstack 的安装十分简单,请参考:https://oneinstack.com/auto/

Flarum 程序需要 PHP 插件 FileInfo,可以在 Oneinstack 下通过以下方式安装:

cd ~
cd oneinstack
./addons.sh

然后按照提示选择即可。

下载程序

首先我们需要把 Flarum 的源码下载到我们的服务器上。Flarum 默认使用 Composer 进行管理和分发,然而这东西着实难用,我就从来没折腾成功过,所以我们使用一个替代的项目:https://github.com/skywalker512/FlarumChina

FlarumChina 将原版 Flarum 程序转换成可供虚拟主机使用的 .zip 压缩包,让安装更为简单。尽管我们将使用 VPS 进行安装,但是依然可以用这个项目。并且 FlarumChina 自带中文语言翻译,免去了官方原版需要寻找语言本地化补丁的烦恼。

首先,我们在 VPS 的根目录进入 Oneinstack 的目录并且准备创建一个 “站点” - 我们暂且称之为 beta.example.com

cd oneinstack
./vhost.sh

然后进入这个站点的目录:

cd /data/wwwroot/beta.example.com

https://github.com/skywalker512/FlarumChina/releases 下载最新版本的 FlarumChina

wget https://github.com/skywalker512/FlarumChina/archive/v0.1.0-beta.7C.zip

解压缩:

unzip v0.1.0-beta.7C.zip

接下来我们需要服务器文件管理软件 WinSCP,进行一些图形化操作:

按照 ssh 的方式登陆即可:

按照 ssh 的方式登陆即可

进入 /data/wwwroot/beta.example.com/FlarumChina-0.1.0-beta.7C 目录,全选所有文件,然后 右键 - Move To 域名的根目录:

Move To

回到 wwwroot 目录,授权域名根目录:

cd /data/wwwroot/
chmod -R 777 beta.example.com

现在打开 beta.example.com,就应该可以顺利地看到安装界面。如果出现任何错误提示,请阅读错误提示并且确认上述步骤全部完成。

安装界面

接下来使用数据库管理工具创建数据库以及用户,并将所有信息填写到安装页面里面,然后点击安装。大约十秒钟以后就可以看到 Flarum 的样子了:

Flarum 的样子

最后,我们还需要设置 Nginx Rewrite,使用 WinSCP 在 /usr/local/nginx/conf/vhost/beta.example.com.conf 里面适当的位置加上这三行 Rewrite Rules 即可:

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

添加完毕以后返回 ssh 客户端,重启 Nginx:

service nginx restart

然后回到你的 Flarum 站点,点击管理后台测试 Rewrite 是否正确:

管理后台

如果成功进入后台,就说明 Rewrite 成功。如果出现任何 HTTP 报错,请检查 Nginx 配置文件是否正确。

Rewrite 成功

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏信安之路

php 后门隐藏技巧

辛辛苦苦拿下的 shell,几天没看,管理员给删了。这篇文章是我个人小小的总结,很多方面都建立在自己理解上思考,如果你有更好的思路,各位表哥们也可以分享。

2860
来自专栏HappenLee的技术杂谈

Ubuntu系统下静态DNS配置详解

因为实验室实现的拟态存储系统需要实现动态变更ip地址,所以需要搭建一个dns服务器,并且将需要查询变更ip地址的服务器都绑定到同一台dns服务器之上。通常在Re...

1943
来自专栏建站达人秀

如何快速搭建 Discuz! 论坛

Discuz!全称:Crossday Discuz! Board,是一套免费使用的社区论坛软件系统,由北京康盛新创科技有限责任公司推出,目前最新版本是Discu...

7.7K8
来自专栏Rainbond开源「容器云平台」

关于K8s集群器日志收集的总结

2583
来自专栏CSDN技术头条

ELK 系统在中小企业从0到1的落地实践

ELK 是一般被称作日志分析系统,是三款开源软件的简称。通常在业务服务上线后我们会部署一套 ELK 系统,方便我们通过图形化界面直接查找日志,快速找到问题源并帮...

1543
来自专栏程序猿

安装 VMware workstation

VMware Workstation 是 VMware 公司推出的一款桌面虚拟计算软件,具有 Windows、Linux 版本。VMware Worksta...

77712
来自专栏杂烩

一个综合的分布式项目之项目环境准备 原

    创建maven项目相信看到这的oscer都会,这里就不赘述,主要贴出一些配置文件(限于篇幅随意贴了点,全部的请看github上)。

691
来自专栏我的小碗汤

LAMP环境部署物联网项目

物联网,即Internet of Things,简写IOT。让所有能行使独立功能的普通物体实现互联互通的网络,通过物联网可以用中心计算机对机器、设备、人员进行集...

4862
来自专栏FreeBuf

又一个登陆框引起的血案

必看的肯定要属HTML源代码了,源代码里包含了下面所说的JS文件。HTML源代码会泄露很多信息,像程序员未删除的注释、敏感路径等都可能在HTML源代码中找的到,...

1864
来自专栏Vamei实验室

被解放的姜戈07 马不停蹄

前面的文章研究了Django最主要的几个方面:数据库,模板,动态生成页面等。但都是使用python manage.py runserver来运行服务器。这是一个...

19710

扫码关注云+社区

领取腾讯云代金券