在Debian上搭建Flarum论坛

2023-12-4 93 12/4

Flarum 是一个免费且开源的下一代论坛软件,使在线讨论变得有趣,简单,快速,免费。Flarum 源代码托管在 Github 上,它被设计为快速,简单,响应迅速和可扩展。

本教程将引导您在使用 PHP,MariaDB 作为数据库,以及 Nginx 作为 Web 服务器的 Debian 10上完成 Flarum 安装过程。

 

照例更新一下系统:

apt update && apt upgrade

 

安装必要依赖:

apt install -y zip unzip curl wget git

 

安装PHP

安装 php 和必要的 php 插件:

apt install -y php php-cli php-fpm php-common php-mbstring php-gd php-xml php-mysql php-curl

 

安装完后检查一下版本:

php --version

 

安装MariaDB

apt install -y mariadb-server

 

检查一下版本:

mysql --version

 

提高 MariaDB 安装的安全性:

mysql_secure_installation

 

此处一路 “y” 就ok了。

以 root 用户身份登录 MariaDB:

mysql -u root -p

 

创建一个新的 MariaDB 数据库和数据库用户,并记住凭据:

MariaDB> CREATE DATABASE dbname; MariaDB> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password'; MariaDB> FLUSH PRIVILEGES; MariaDB> quit

 

用适合您设置的名称替换 dbname 和 username,替换 password 为强密码。dbname 为你新建的数据库名称,username 为数据库用户名,password 为数据库密码,默认的数据库主机地址是 localhost,这些要记下来,等下浏览器里安装会需要。

安装Composer

下载并安装 Composer,它是 PHP 的依赖性管理器:

#下载脚本 php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" 
#运行安装脚本 php composer-setup.php 
#删除脚本 php -r "unlink('composer-setup.php');" 
#移动到运行目录 sudo mv composer.phar /usr/local/bin/composer

 

检查版本:

composer --version

 

安装Flarum

创建一个文档根目录:

mkdir -p /var/www/flarum

cd /var/www/flarum

 

通过 Composer 下载最新版本的 Flarum:

composer create-project flarum/flarum . --stability=beta

 

最后变更 flarum 目录的所有权为 www-data:

chown -R www-data:www-data /var/www/flarum

 

安装Nginx

安装 Nginx 前,别忘了申请 SSL 证书,申请证书请参考俺以前写过的文章,这里就不赘述。

安装nginx:

apt install nginx

 

检查一下版本或插件:

nginx -V

 

为 Flarum 配置 Nginx,下面是完整的配置文件:

vi /etc/nginx/nginx.conf
pid /var/run/nginx.pid;
worker_processes auto;
worker_rlimit_nofile 51200;
events {
    worker_connections 10240;
    multi_accept on;
    use epoll;
}
http {
    server_tokens off;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 120s;
    keepalive_requests 10000;
    types_hash_max_size 2048;
    include /etc/nginx/mime.types;
    access_log off;
    error_log /dev/null;
    server {
        listen 80;
        listen [::]:80;
        server_name frone.yeahwu.ml;
        location / {
            return 301 https://$server_name$request_uri;
        }
    }

    server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name frone.yeahwu.ml;
        root /var/www/flarum/public;
        index index.html index.htm index.php default.html default.htm default.php;
        ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
        ssl_certificate /etc/letsencrypt/live/frone.yeahwu.ml/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/frone.yeahwu.ml/privkey.pem;

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

        location ~* \.php$ {
            fastcgi_pass unix:/run/php/php7.3-fpm.sock;
            include fastcgi_params;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
    }
}

 

上面注意修改域名,保存后检查一下 nginx 配置:

nginx -t

 

配置无问题的话,启动nginx:

systemctl start nginx

 

最后,在浏览器中打开您的站点,然后按照下图的说明完成安装。

在Debian上搭建Flarum论坛