Canvas 安装 Rich Content Editor (RCE)

发布于: 26 October, 2021
分享:

Canvas 安装 Rich Content Editor (RCE) 可以为用户提供一个功能强大且用户友好的文本编辑工具

Nodejs 版本:18.0 以上

Github Repository: https://github.com/instructure/canvas-rce-api

服务器端口:

云端服务器,需要在安全组里打开 3000 端口或自定义端口

克隆代码

$ cd /data
$ git clone https://github.com/instructure/canvas-rce-api.git rce

 

安装 Node 依赖

$ cd rce
$ npm install

 

RCE 配置文件

$ cp .env.example .env

 

编辑配置文件

$ nano .env

 

参考配置如下:

PORT=3000
NODE_ENV=production
STATSD_HOST=127.0.0.1
STATSD_PORT=8125
ECOSYSTEM_SECRET=astringthatisactually32byteslong
ECOSYSTEM_KEY=astringthatisactually32byteslong
#CIPHER_PASSWORD=TEMP_PASSWORD
#FLICKR_API_KEY=fake_key
#UNSPLASH_APP_NAME=canvas-rce-api-dev
#UNSPLASH_APP_ID=fake_app_id
#UNSPLASH_SECRET=fake_secret
#YOUTUBE_API_KEY=fake_key

其中 ECOSYSTEM_SECRET 等效于 canvas/config/vault_contents.yml 文件中的  signing_secret,而 ECOSYSTEM_KEY 等效于 encryption_secret,对照 Canvas 配置文件目录 config 下面的 vault_contents.yml 中设置的两串密钥。

打开 canvas/config 目录下 vault_contents.yml,检查是否存在 production,并修改 signing-secret 和 encryption-secret:

production:
  'app-canvas/data/secrets':
    data:
      canvas_security:
        encryption_secret: "astringthatisactually32byteslong"
        signing_secret: "astringthatisactually32byteslong"

 

修改 Apache 虚拟主机配置文件

$ sudo nano /etc/apache2/sites-available/canvas.conf

80 和 443 节点末尾都添加:ProxyPass /rce/ http://127.0.0.1:3000/

注意端口号3000后面的 "/"

 

修改 Canvas 配置文件:

$ nano config/dynamic_settings.yml

 

将 app-host 修改为代理地址:

rich-content-service:
    app-host: "https://xxxxxxx.com:3000"

 

执行如下命令,启用 Apache 相关模块:

$ sudo a2enmod proxy
$ sudo a2enmod proxy_http
$ sudo a2enmod proxy_balancer
$ sudo a2enmod lbmethod_byrequests

 

如果后期 RCE 单独运行在另外一台独立服务器,可执行如下命令,禁用 Apache 相关模块(注意顺序):

$ sudo a2dismod lbmethod_byrequests
$ sudo a2dismod proxy_balancer
$ sudo a2dismod proxy_http
$ sudo a2dismod proxy

 

修改 apache.conf

$ sudo nano /etc/apache2/apache2.conf

修改:

ServerName localhost

 

重启 Apache 服务

$ sudo service apache2 restart

 

RCE
分享:

0 留言

留言

您的留言将被人工审核,请勿发表色情、反动言论。

您可能感兴趣

Canvas 部署 Amazon(亚马逊) S3 存储方案

Canvas 支持服务器本地文件存储和云端文件存储,目前 Canvas 已完美支持亚马逊 AWS S3 云端存储方案,与本...

如何恢复 Canvas 中已删除的用户

如果不小心误删了学生或者教师的账户怎么办?

Canvas LTI 外部工具详解

Canvas LTI 集成是将第三方学习工具嵌入 Canvas 中,实现无缝整合和交互,提供更丰富的学习体验和功能扩展...

如何编译开源版本 Canvas iOS App

Instructure 公司秉承开源精神,提供了全套的 iOS 和 Android App 开源程序,爱好者或开发者可自行下载进行...