开源实例之SForum
前言
SForum(原 SuperForum)是一款高性能组件化的论坛程序,基于 PHP 开发(Hyperf 框架)。
项目地址
| 类别 | 描述 | 
|---|---|
| 官网 | https://www.sforum.cn | 
| 论坛 | https://www.runpod.cn | 
| 仓库 | https://github.com/zhuchunshu/SForum | 
| QQ 群 | 798695907 | 
实例地址
实例配置
| 配置 | 描述 | 
|---|---|
| 系统 | Debian | 
| 服务端 | PHP 8.0 | 
| 数据库 | MariaDB 10.5 | 
| 缓存 | Redis | 
| 程序 | SForum 2.2.8 | 
实例部署
SForum 原生安装需要一定开发基础,不过官方提供了便捷的 Docker 部署。以下安装过程以 Debian 11 系统为例介绍 Docker部署和原生安装的方法。
Docker部署
安装 docker
sudo apt install docker.io docker-compose下载yml
wget https://raw.githubusercontent.com/zhuchunshu/SForum/master/docker-compose.yml文件内容如下:
version: '3'
services:
  web:
    #zhuchunshu/sforum:v2 or ghcr.io/zhuchunshu/sforum:v2
    image: zhuchunshu/sforum
    ports:
      - "9501:9501"
    environment:
      - DB_HOST=db
      - REDIS_HOST=redis
      - DB_DATABASE=sforum
      - DB_USERNAME=sforum
      - DB_PASSWORD=sforum
    depends_on:
      - db
      - redis
    networks:
      - sf
    volumes:
      - sforum:/data
    restart: always
  redis:
    image: redis:7.0
    restart: always
    networks:
      - sf
    volumes:
      - redis:/data
      - redis:/usr/local/etc/redis/redis.conf
      - redis:/logs
  db:
    image: mariadb:10.5.18
    restart: always
    environment:
      MARIADB_ROOT_PASSWORD: sforum
      MARIADB_DATABASE: sforum
      MARIADB_USER: sforum
      MARIADB_PASSWORD: sforum
    networks:
      - sf
    volumes:
      - db:/var/lib/mysql
networks:
  sf:
    external: false
volumes:
  sforum:
    driver: local
  db:
    driver: local
  redis:
    driver: local启动SForum
docker-compose up -d程序启动后监听在 9501 端口,使用 Nginx 反代即可,下文有具体描述。
原生安装
原生安装 SForum 需要安装 PHP、MySQL、Redis、Nginx、composer。
安装 PHP
SForum 目前支持 PHP8.0,需要使用 PPA 源安装:
curl -sSL https://packages.sury.org/php/README.txt | bash -x
apt install php8.0所需 PHP 扩展:
apt install php8.0-curl php8.0-xml php8.0-gd php8.0-mbstring php8.0-redis php8.0-swoole php8.0-bcmath安装 MySQL
本例使用 MariaDB。
apt install mariadb-server-10.5创建一个数据库,用于后续安装程序。
安装 Redis
apt install redis-server安装 Nginx
apt install nginx安装composer
apt install git zip unzip
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer安装SForum
composer create-project zhuchunshu/sforum进入安装目录,按照提示,连续执行命令即可完成安装(启动服务也是此命令):
php CodeFec CodeFecNginx反代设置
本例完整配置如下:
server {
    listen 80;
    listen 443 ssl http2;
    server_name sforum.dujun.eu.org;
    add_header "Access-Control-Allow-Origin" "*" always;
    add_header "Access-Control-Allow-Credentials" "true" always;
    add_header "Access-Control-Allow-Methods" "GET,HEAD,POST" always;
    location / {
        proxy_pass http://127.0.0.1:9501;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
        proxy_set_header Origin http://$host;
        proxy_redirect default;
    }
    ssl_certificate /root/.acme.sh/dujun.eu.org/fullchain.cer;
    ssl_certificate_key /root/.acme.sh/dujun.eu.org/dujun.eu.org.key;
    ssl_trusted_certificate /root/.acme.sh/dujun.eu.org/ca.cer;
}实例体验
特别说明:为方便体验,对程序做了修改(包括自动填写用户名、密码、验证码、取消发帖/回帖时间限制等)。体验原版可以访问官方演示站http://demo.sforum.cn/admin(账号/密码:demo/demo)。
后记
本实例仅供参考,不定期重置数据。



