关于javascript:使用腾讯云轻量部署FirefoxSend临时文件分享服务

8次阅读

共计 1778 个字符,预计需要花费 5 分钟才能阅读完成。

Firefox Send 是火狐旗下的 长期 网盘,它能够在 全平台 应用,网页式 操作,不须要附加组件 (而且 不限速 ),能够在任何古代浏览器中应用。以超链接模式分享,可设置分享的文件 下载次数、工夫和明码 ,达到指定下载次数或时长后文件主动过期,并主动从 Send 服务器中删除,在某种程度上相当于 阅后即焚

更重要的是,Firefox Send 是一款 开源软件。(GitHub 地址)

这意味着任何用户都能够搭建属于本人的 Firefox Send

惋惜的是, 因为不法分子的歹意应用, 在 2020 年 9 月 17 日,官网团队 Mozilla 正式发表:永恒敞开用于传输文件的 Firefox Send 服务。

以下记录一下本人部署 FirefoxSend 的过程

筹备

  • 一台云服务器
  • 装置宝塔面板

最近的腾讯云 618 流动很不错, 其中的 轻量 2 核 4G5M一年仅需 288.

618 流动链接:https://cloud.tencent.com/act…

腾讯云轻量服务器链接:https://cloud.tencent.com/act…

装置

Firefox Send 根本的搭建至多须要 Node.js 10.x

在宝塔装置 pm2 管理器和 redis

在 pm2 管理器内抉择适宜的 node 版本(须要 10.x 版本及以上)

官网给的装置过程用 root 用户执行 npm run build 的话会出问题, 报错如下:

mode: production

/var/www/send/node_modules/webpack/lib/optimize/ConcatenatedModule.js:679

          throw err;

          ^



SyntaxError: Unexpected token (3:25)

| !(function webpackMissingModule() {var e = new Error("Cannot find module'webcrypto-core'"); e.code ='MODULE_NOT_FOUND'; throw e; }());

| 

| class LinerError extends !(function webpackMissingModule() {var e = new Error("Cannot find module'webcrypto-core'"); e.code ='MODULE_NOT_FOUND'; throw e; }()) {|   constructor() {|     super(...arguments);

...

所以咱们新建一个普通用户

useradd -d /home/firefoxsend -m send

cd /home/firefoxsend进入文件夹, 进入执行 git clone https://github.com/mozilla/send.git 从 GitHub 拉取源码

国内服务器拉 github 太慢的话, 可先在 https://github.com/mozilla/send/releases 下载到本地, 而后上传到服务器

将 firefoxsend 目录用户权限改为新建用户 send

chown -R send:send firefoxsend

之后咱们批改 Webpack.config.js 敞开主动查看,, 如果不批改参数敞开主动查看,绑定域名之后无法访问。

在下图所示地位退出disableHostCheck: true,

而后咱们进行装置

切换用户 su send

在源码的文件夹内执行npm install

应用:npm run build 编译生产环境。

最初运行 npm run prod

拜访地址为ip:1443 不要遗记开启端口

域名拜访

咱们应用宝塔的反代就能够了.

在配置文件里加上以下内容:

location /api/ws {

       proxy_redirect off;

       proxy_pass http://0.0.0.0:1443;

       proxy_http_version 1.1;

       proxy_set_header Upgrade $http_upgrade;

       proxy_set_header Connection "upgrade";

       proxy_set_header Host $http_host;

   }

须要代理 /api/ws 这个门路,是因为 firefox-send 文件上传应用的是 websocket 协定

配置后盾启动

应用 npm run prod 启动后, 敞开 ssh, 服务也就敞开了. 咱们能够应用 screen 或者 pm2 管理器来使其后盾运行

在宝塔 pm2 管理器, 如图配置即可

正文完
 0