如何使用 Nginx 和 Let’s Encrypt SSL 在 CentOS 7 上安装 Kanboard如何使用 Nginx 和 Let’s Encrypt SSL 在 CentOS 7 上安装 Kanboard如何使用 Nginx 和 Let’s Encrypt SSL 在 CentOS 7 上安装 Kanboard如何使用 Nginx 和 Let’s Encrypt SSL 在 CentOS 7 上安装 Kanboard
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何使用 Nginx 和 Let’s Encrypt SSL 在 CentOS 7 上安装 Kanboard

发表 admin at 2025年2月28日
类别
  • 未分类
标签

这是使用 Nginx Web 服务器和可选的 Let’s Encrypt SSL 证书在 CentOS 7 上安装和配置 Kanboard 的完整指南。 Kanboard 是一款项目管理软件,它使用看板方法来帮助您可视化工作流程并更快、更高效地完成任务。

Kanboard 的特点

  • 它是一个免费且开源的
  • 它使您能够根据您的业务活动定制您的董事会
  • 具有对报告和分析的本机支持
  • 您可以拥有多个具有拖放任务能力的项目
  • 提供易于使用的网络仪表板,可以通过现代浏览器从任何地方访问
  • 能够通过插件扩展功能并集成到其他外部服务

CentOS 7 上的 Kanboard 设置

  • 数据库 – 默认情况下 Kanboard 使用 SQLite,但我们将使用推荐用于大型团队的 MariaDB。
  • Web 服务器:我们将安装和配置 Nginx。
  • PHP 7.2
  • 以下是可以安装的 PHP 扩展:

可选的 PHP 扩展

在 CentOS 7 上安装 Kanboard

请按照以下步骤在 CentOS 7 上安装 Kanboard。

第1步:安装MariaDB数据库服务器

使用以下指南在 CentOS 7 服务器上安装 MariaDB 数据库服务器:

在 Ubuntu 18.04 和 CentOS 7 上安装 MariaDB 10.x

安装完成后,使用用户创建一个数据库。首先,以root用户登录数据库CLI。

$ mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 39
Server version: 10.3.9-MariaDB-1:10.3.9+maria~bionic-log mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

然后运行命令来创建数据库和具有所需权限的用户

CREATE DATABASE kanboard CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;;
GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboard'@'localhost' IDENTIFIED BY 'StrongPassword';
FLUSH PRIVILEGES;
\q

第2步:安装Nginx和PHP

接下来,我们可以安装 Nginx Web 服务器和所需的 php 扩展

sudo yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install epel-release yum-utils
sudo yum-config-manager --disable remi-php54
sudo yum-config-manager --enable remi-php72
sudo yum -y install php php-{fpm,mbstring,cli,json,opcache,zip,xml,gd,ldap,mysql,json,sqlite3}

安装nginx

sudo yum -y install nginx

第 3 步:下载并安装 Kanboard

您有两种下载 Kanboard 的选择:

  • 从稳定版本开始
  • 来自 Github 开发分支

要下载 Kanboard 的特定稳定版本,请查看 Kanboard 版本页面。截至撰写本文时,最新版本为1.2.5

export VER=1.2.5
wget https://github.com/kanboard/kanboard/archive/v${VER}.tar.gz
tar xvf v${VER}.tar.gz
rm -f v${VER}.tar.gz
sudo mv kanboard-${VER}/ /var/www/kanboard

要下载开发版本,请使用

sudo git clone https://github.com/kanboard/kanboard.git /var/www/kanboard

创建配置文件

复制 Kanboard 配置模板。

sudo cp /var/www/kanboard/config.default.php /var/www/kanboard/config.php
sudo vim /var/www/kanboard/config.php

文件 config.php 应包含数据库访问值。

// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'mysql');

// Mysql/Postgres username
define('DB_USERNAME', 'kanboard');

// Mysql/Postgres password
define('DB_PASSWORD', 'StrongPassword');

// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');

// Mysql/Postgres database name
define('DB_NAME', 'kanboard');

此 Kanboard 的广泛配置参考有助于正确配置其他功能,例如 LDAP 身份验证、SMTP 设置、暴力保护、日志记录、安全 HTTP 标头设置等。

设置适当的权限

sudo chown -R nginx:nginx /var/www/kanboard

配置 php-fpm

编辑文件 /etc/php-fpm.d/www.conf

设置如下

user = nginx
group = nginx
listen = /run/php-fpm/php7.2-fpm.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660

第四步:配置Nginx

使用以下内容创建 Nginx 配置文件 /etc/nginx/conf.d/kanboard.conf

server {
        listen       80;
        #listen       443 ssl;
	#ssl_certificate /etc/nginx/ssl/kanboard.crt;
	#ssl_certificate_key /etc/nginx/ssl/kanboard.key;
        server_name  kanboard.example.com;
        index        index.php;
        root         /var/www/kanboard;
        client_max_body_size 32M;

        location / {
            try_files $uri $uri/ /index.php$is_args$args;
        }

        location ~ \.php$ {
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/run/php-fpm/php7.2-fpm.sock;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_index index.php;
            include fastcgi_params;
        }

        location ~* ^.+\.(log|sqlite)$ {
            return 404;
        }

        location ~ /\.ht {
            return 404;
        }

        location ~* ^.+\.(ico|jpg|gif|png|css|js|svg|eot|ttf|woff|woff2|otf)$ {
            log_not_found off;
            expires 7d;
            etag on;
        }

        gzip on;
        gzip_comp_level 3;
        gzip_disable "msie6";
        gzip_vary on;
        gzip_types
            text/javascript
            application/javascript
            application/json
            text/xml
            application/xml
            application/rss+xml
            text/css
            text/plain;
    }

使用 Let’s Encrypt SSL

此示例适用于 http 到 https 重定向和 Let’s Encrypt SSL 证书

# HTTP

server {
	listen 80;
        server_name  kanboard.example.com;
        root         /var/www/kanboard;
	location / {
        	rewrite     ^ https://kanboard.example.com$request_uri? permanent;
    }
}
	
# HTTPS
server {
        listen       443 ssl;
	ssl_certificate /etc/letsencrypt/live/kanboard.example.com/fullchain.pem;
	ssl_certificate_key /etc/letsencrypt/live/kanboard.example.com/privkey.pem;
        server_name  kanboard.example.com;
        index        index.php;
        root         /var/www/kanboard;
        client_max_body_size 32M;

        location / {
            try_files $uri $uri/ /index.php$is_args$args;
        }

        location ~ \.php$ {
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/run/php-fpm/php7.2-fpm.sock;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_index index.php;
            include fastcgi_params;
        }

        location ~* ^.+\.(log|sqlite)$ {
            return 404;
        }

        location ~ /\.ht {
            return 404;
        }

        location ~* ^.+\.(ico|jpg|gif|png|css|js|svg|eot|ttf|woff|woff2|otf)$ {
            log_not_found off;
            expires 7d;
            etag on;
        }

        gzip on;
        gzip_comp_level 3;
        gzip_disable "msie6";
        gzip_vary on;
        gzip_types
            text/javascript
            application/javascript
            application/json
            text/xml
            application/xml
            application/rss+xml
            text/css
            text/plain;
    }

检查配置语法

# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

如果返回OK,那么您可以启动 nginx 服务

sudo systemctl restart php-fpm nginx
sudo systemctl enable php-fpm nginx

第 5 步:访问 Kanboard Web UI

使用您喜爱的网络浏览器打开链接 http://kanboard.example.com 来访问 Kanboard Web UI。将 kanboard.example.com 替换为您的正确域名。

要登录,请使用:

用户名:admin
密码:admin

您应该进入如下所示的仪表板

重置管理员密码

为了安全起见,请导航至管理 > 用户管理 > admin 重置管理员密码

就这样。您现在在 CentOS 7 服务器上有了一个可以运行的 Kanboard。要进一步调整您的 Kanboard,请参阅管理指南。

©2015-2025 Norria support@alaica.com