Flarum论坛程序详细安装教程
Flarum是一款轻论坛程序,该程序安装后的论坛页面简洁轻快,样式排版也比较合理好看。关于Flarum的更多特点这里就不介绍了,可以到官网查看。
Flarum已经于北京时间 2021年5月27日 17:00 发布了第一个正式版。
相关链接
GitHub:https://github.com/justjavac/flarum
官方文档:https://github.com/justjavac/flarum-doc/blob/master/using/installation.md
教程搭建站点为:www.diqizhang.com(随时会删除)
教程步骤
环境要求
内存:>=2GB
MySQL:5.6+。建议5.7版本,开启中文搜索功能需要 MySQL 5.7 及以上。
PHP:>=7.3
Composer:宝塔Linux面板默认已安装
本教程默认安装服务器环境:CentOS 7.9,宝塔Linux面板。环境程序的安装过程这里就不说了,宝塔直接点击安装即可。
本教程受演示服务器内存限制,只安装了 MySQL 5.6 ,中文搜索功能步骤无法提供命令执行截图。演示站点也无法搜索中文。
官方安装文档很久没有更新,里面有部分内容是错误的,只可参考。
创建站点
首先我们在宝塔面板正常创建一个站点,同时创建MySQL数据库。
删除站点目录文件
创建站点后默认宝塔面板会在站点目录内生成几个文件,我们需要将这几个文件全部删除。保持站点目录为空的状态。
删除PHP禁用函数
宝塔面板的默认PHP安装后会禁用一些危险函数。我们需要将这些函数在禁用列表删除。
putenv,pcntl_signal,proc_open
安装fileinfo扩展
程序需要使用到fileinfo这个PHP扩展,我们需要安装一下。
确认Composer 状态
进入服务器SSH,输入命令Composer查看服务器是否安装了Composer 。
如果未安装,可使用下面命令进行安装。
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" php composer-setup.php php -r "unlink('composer-setup.php');" sudo mv composer.phar /usr/local/bin/composer
安装Flarum
SSH中进入站点目录:cd 目录地址
然后使用下面命令安装Flarum
composer create-project flarum/flarum . --stability=beta
安装完成后会显示如下界面:
伪静态设置
Flarum需要添加伪静态规则。规则其实就是网站目录里的.nginx.conf。这里不要使用官方文档里的伪静态,否则无法打开后台地址,报404。
Nginx
# Pass requests that don't refer directly to files in the filesystem to index.php location / { try_files $uri $uri/ /index.php?$query_string; } # Uncomment the following lines if you are not using a `public` directory # to prevent sensitive resources from being exposed. # location ~* ^/(\.git|composer\.(json|lock)|auth\.json|config\.php|flarum|storage|vendor) { # deny all; # return 404; # } # The following directives are based on best practices from H5BP Nginx Server Configs # https://github.com/h5bp/server-configs-nginx # Expire rules for static content location ~* \.(?:manifest|appcache|html?|xml|json)$ { add_header Cache-Control "max-age=0"; } location ~* \.(?:rss|atom)$ { add_header Cache-Control "max-age=3600"; } location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|mp4|ogg|ogv|webm|htc)$ { add_header Cache-Control "max-age=2592000"; access_log off; } location ~* \.(?:css|js)$ { add_header Cache-Control "max-age=31536000"; access_log off; } location ~* \.(?:ttf|ttc|otf|eot|woff|woff2)$ { add_header Cache-Control "max-age=2592000"; access_log off; } # Gzip compression gzip on; gzip_comp_level 5; gzip_min_length 256; gzip_proxied any; gzip_vary on; gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/javascript text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
其他环境的伪静态规则都可以在网站目录内找到,composer执行后会下载下来。这里就不再贴了。
更改运行目录
将网站运行目录更改为站点目录下面的public目录。
更改文件夹权限
storage文件夹权限设为777,用户组root
public/assets文件夹权限设为777,用户组root
填写配置信息
前面步骤做完后访问网站地址就进入了安装界面。
看不懂英文可以浏览器翻译,或者对照下面图片来填。
安装完成
到这里程序的安装就完成了,访问/admin可以进入管理后台。
其他问题
安装中文语言包
在SSH中执行下面命令,然后管理后台启用即可。
composer require flarum-lang/chinese-simplified php flarum cache:clear
开启中文搜索
Flarum默认不支持中文搜索,我们需要对数据库进行一些设置。
提醒!以下操作需要 MySQL 5.7 及以上版本才支持!
MySQL 自 5.7 开始支持多语种文字全文索引。
更改MySQL配置文件
在配置文件中的mysqld加上
ngram_token_size=2
保存后重启MySQL。
重建数据库索引
这一步我们使用PHPmyadmin,没有的就在宝塔安装下。
安装后在宝塔面板数据库页面,点击管理就进入了数据库管理页面。
一般会自动登录数据库,如果没有登陆,就填入数据库账号密码登陆一下。
在sql查询中执行下面的代码
USE YourFlarumDataBaseName; // 这里替换为你的 Flarum 数据库的名字 ALTER TABLE posts DROP INDEX content; CREATE FULLTEXT INDEX content ON `posts` (`content`) WITH PARSER ngram;
执行成功后,再执行下面的代码。
USE YourFlarumDataBaseName; // 这里替换为你的 Flarum 数据库的名字 ALTER TABLE discussions DROP INDEX title; CREATE FULLTEXT INDEX title ON `discussions` (`title`) WITH PARSER ngram;
完成后等待一下,强制刷新浏览器缓存查看效果吧。
(本教程受演示服务器内存限制,只安装了 MySQL 5.6 ,中文搜索功能步骤无法提供命令执行截图。演示站点也无法搜索中文。)