云网牛站
所在位置:首页 > Linux云服务器 > 用Nginx在Ubuntu 18.04上安装和配置Kanboard的步骤

用Nginx在Ubuntu 18.04上安装和配置Kanboard的步骤

2019-01-21 15:12:22作者:戴进稿源:云网牛站

本文介绍使用Nginx服务器在Ubuntu 18.04系统上安装和配置Kanboard的详细步骤。

 

Kanboard使用环境

数据存储-默认情况下,Kanboard使用SQLite,但可以将其替换为MySQL/MariaDB或PostgreSQL等关系数据库。MySQL>=5.6或MariaDB>=10,对于需要高可用性配置的大型团队,建议使用Mysql/Postgres。

Web服务器-可以使用Nginx、Apache或Caddy Server。

PHP>=5.6.0及相关PHP Extensions。

 

第1步:安装MariaDB数据库

参考在Ubuntu 18.04系统上安装MariaDB 10.4的步骤

安装MariaDB完成后,使用用户创建数据库,首先,以root用户身份登录数据库CLI:

$ mysql -u root -p

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

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扩展(如要安装PHP 7.3请参考在Ubuntu 18.04或CentOS 7系统上安装PHP 7.3一文):

sudo apt update

sudo apt install php php-{fpm,mbstring,cli,json,opcache,zip,xml,gd,ldap,mysql,json,sqlite3}

sudo apt-get install nginx

 

第3步:下载并安装Kanboard

Kanboard下载地址,目前新版本是Kanboard 1.2.7,属于稳定版本:

wget https://github.com/kanboard/kanboard/archive/v1.2.7.tar.gz

tar xvf v1.2.7.tar.gz

rm -f v1.2.7.tar.gz

sudo mv kanboard-1.2.7/ /var/www/kanboard

要下载开发版本,请使用:

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

1、创建配置文件

复制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标头设置。

2、设置适当的权限

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

 

第4步:配置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:/var/run/php/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;

}

如果要使用https,请取消注释SSL配置行。

1、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:/var/run/php/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;

}

2、检查配置syntax:

# 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 nginx

sudo systemctl enable nginx

 

第5步:访问Kanboard Web UI(最后一步)

在浏览器中打开http://kanboard.example.com(这个地址应该输入为自己的域名),访问Kanboard Web UI:

用Nginx在Ubuntu 18.04上安装和配置Kanboard的步骤

要登录使用,请使用以下帐号和密码:

用户名:admin

密码:admin

登陆进去就可以看到Kanboard面板了:

用Nginx在Ubuntu 18.04上安装和配置Kanboard的步骤

附:重置管理员密码

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

用Nginx在Ubuntu 18.04上安装和配置Kanboard的步骤

用Nginx在Ubuntu 18.04上安装和配置Kanboard的步骤

然后注销并重新登录Kanboard。

至此,在Ubuntu 18.04上安装和配置Kanboard的步骤就全部完成了。

 

相关主题

以图解的方式在Ubuntu 18.04.1中安装mysql数据库

精选文章
热门文章