Flarum: 搭建和部署

1 篇文章 0 订阅
1 篇文章 0 订阅

前提

本文简要指明如何快速在运行php / Caddy Server的网站上,以子域名的方式部署现代BBS平台Flarum,我选用的是 FlarumChina 中文优化版。

有用的站点:

下载依赖

  1. 关闭php和服务器;
  2. 首先选下列三样之一下载:
  1. 在网站根节点建立一个子目录/bbs(或者其他什么);
  2. 解压缩必要的文件:
  • 如果你下载的是部署脚本,把下载下来的index.php解压缩出来(只有这个东西是有用的),放在刚建的子目录下。
  • 如果你下载的是完整包,把它的内容解压缩(不要带着压缩根目录“flarumchina-master”,否则相当于再次创建了一个子目录你懂的)到刚建的子目录下。
  1. php.ini中启用fileinfoexif两个插件(根据服务器运行的OS不同操作也不同,基本操作就是去掉注释号“;”,fileinfo还依赖于其他插件,请一并启用)。

安装

  1. 打开服务器和php,进入localhost/bbs
  • 如果你用的是自动部署脚本,它会开始自动工作,工作完成后它会销毁自身,并转到Flarum的Setup界面
  • 如果用的是完整包,目前应该已经看到了Flarum的Setup界面
  1. 进入MySQL终端,新建一个空数据库bbs_flarum(名称自定);
  2. 回到Flarum的Setup界面,输入论坛名、MySQL的用户名、服务器、密码,数据库就填写刚才建立的bbs_flarum即可,数据库前缀可不填。
  3. 完成设置后,视浏览器和服务器配置可能会出现白屏或者404,也可能进入了一个看起来工作正常的论坛。无论哪种,实际上Flarum都已经配置好了。

配置重定向

Flarum的多数功能都需要使用URL重写,因此必须在服务器上开启必要的功能。如果使用Caddy之外的其他服务器,请移步这里:

如果你使用Caddy Server,请在caddyfile中参考下面的内容调整、追加配置:

localhost:80 {
	## 以下是常规配置,你应该已经配置了类似的东西:
	root C:\\www\\root # 修改: root目录;如果在子文件夹中运行,不要指定/bbs子文件夹
	gzip
	errors error.log {
		404 404.html # 修改: 404页面;之后用到404的地方也需要修改
	}
	fastcgi / 127.0.0.1:9000 php {
		# 修改: 配置php-cgi
	}
    ## 以下是重写配置:
    rewrite {
        r  ^/bbs/api.*$ # 修改: /bbs为论坛子目录,如果无需设立子目录就删掉'/bbs'四个字符,下同
        to /bbs/api.php
        # 意义:请求.../api时转而请求对于php
    }
    rewrite {
        r  ^/bbs/admin.*$ # 修改: /bbs为论坛子目录,如果无需设立子目录就删掉'/bbs'四个字符,下同
        to /bbs/admin.php
        # 意义:请求.../admin时转而请求对于php
    }
    rewrite {
        to {path} {path}/ /bbs/{path} /bbs/{path}/ /bbs/index.php
        # 修改: 上面这行,如果无需设立子目录,就删掉'/bbs/{path} /bbs/{path}/ /bbs',注意空格
        # 意义:如果一个请求的资源(如'/assets')在根目录下找不到就去子目录找,如果还找不到就转而请求.../index.php
    }
    rewrite {
        r ^.*?bbs/vendor.*?$ # 修改: /bbs为论坛子目录,如果无需设立子目录就删掉'/bbs'四个字符
        to /404.html
        # 意义:不允许请求.../vendor
    }
    rewrite {
        r ^.*?bbs/storage.*?$ # 修改: /bbs为论坛子目录,如果无需设立子目录就删掉'/bbs'四个字符
        to /404.html
        # 意义:不允许请求.../storage
    }
    rewrite {
        r ^.*?bbs/config.php$ # 修改: /bbs为论坛子目录,如果无需设立子目录就删掉'/bbs'四个字符
        to /404.html
        # 意义:不允许请求.../config.php,这里面保存了数据库密码
    }
    rewrite {
        if {path} match ^.*?bbs/(composer\.(json|lock)|config\.php|flarum|storage|vendor).*?$
        # 修改: 上面这行,子目录名,如果无需设立子目录就删掉'/bbs'四个字符
        to /404.html
        # 意义:不允许请求一堆敏感的东西
    }
}

重启服务器,论坛应该已经可以正常使用了,测试:右上角点自己→设置后台

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值