宝塔搭建fiora聊天室

12 月 4, 2021 | 折腾

前言

fiora聊天室是基于node.js和react由碎碎酱独自开发的开源网页聊天室,使用socket.io模块WebSocket协议通讯,支持Service Worker和PWA.功能丰富,并且简单易上手,很适合作为学习node.js的参考项目,node.js初学者的福音

项目地址: https://github.com/yinxin630/fiora

文档:https://yinxin630.github.io/fiora/zh-Hans/

演示站点:fwzd(站点备案中)

宝塔安装Fiora

1. 自我安装好宝塔。(至少CentOS 7.6 装好nginx)
2. 在 软件商店 安装好PM2管理器、MongoDB、Redis,三个应用。
3. 如有外部安全防火墙 请预先开放9200端口,宝塔开启9200端口。
4. ssh连接服务器

5. 先测试下环境是否正常 没有的退出重新连接SSH

node -v(大于等于v16.13.1)
npm -v (大于等于8.1.2)

6. 拉取源码并存放于你的目标文件夹

git clone https://github.com/yinxin630/fiora.git -b master

7. 进入fiora夹

cd /目标文件夹路径/fiora/

8. 安装依赖,用yarn来安装

yarn install

9. 构建

yarn build:web

10. 配置 JwtSecret  请将*****  替换为一个秘密文本

echo "JwtSecret=******" > .env

11. 启动

yarn start

12. 注册用户

打开 http://你服务器ip:9200 注册第一个用户: admin

13. 接下来配置管理员,先使用Ctrl+C断开运行。

14. 获取用户userid 比如admin

fiora getUserId admin

15. 设置管理员 宝塔打开 / 目标文件夹路径 /fiora/.env 文件,添加下列一行:(userid是上面取到的一连串文本,注意代换。)

Administrator=userid

16. 再次启动fiora

yarn start

17. 浏览器刷新,检查是否有管理权限了。没问题使用Ctrl+C断开运行 配置宝塔PM2在后台运行

启动文件填npm

运行目录填你fiora的文件路径

项目名称和其它看你自己需求了

这样就算重启服务器也会自己运行了

域名反代

如需要加证书,申请/更换ssl时需关闭域名反代。

  1. 宝塔面板里面,先点击左侧网站,添加站点,然后再点击添加好了的域名
  2. 网址 – 域名 – 设置- 反向代理 – 增加反向代理
  3. 目标URL http://127.0.0.1:9200
  4. 发送域名 填你反代的域名

打开你的域名,就可以看到Fiora在运行了。
其它的设置事项,请参考官方说明。

缓存问题

1.缓存问题 如修改后 ip:9200 访问正常 域名访问还是旧文件

暂停域名反代

关闭 反向代理的 开启缓存 

删除反向代理–>配置文件里 expires 12h;  

清空 /www/server/nginx/proxy_cache_dir/ 夹里文件

清空 /www/server/nginx/proxy_temp_dir/ 夹里文件

如有cdn 也需要清除cdn缓存

开启域名反代

强制刷新/清空浏览器缓存/换个浏览器 重新访问

DIY

需在聊天室无启用的情况下修改 修改完需重构

侧边: / 目标文件夹路径 /fiora/packages/web/src/modules/Sidebar/ (这个夹里都是有关侧边的,主要文件是Sidebar.tsx)

主页: / 目标文件夹路径 /fiora/packages/web/src/template.html

图标: / 目标文件夹路径 /fiora/packages/server/public/(这个夹里三个带logo图片就是了)

修改好后

进入:  cd / 目标文件夹路径 /fiora/

重构:  yarn build:web

启动:  yarn start

浏览器Ctrl+F5强制刷新聊天室 检查修改是否成功 有问题 使用Ctrl+C断开运行 重新修改完再次 重构 启动 待所有没问题后

使用Ctrl+C再次断开运行用,使用宝塔PM2后台重启运行就可以了

侧边栏:修改/ 目标文件夹路径 /fiora/public/js/app.********.js三个文件

目录

|-- [.githubb]                // github actions
|-- [.vscode]                 // vscode workspace config
|-- [bin]                     // server scripts
|-- [build]                   // webpack config
|-- [client]                  // web client
|-- [config]                  // application configs
|-- [dist]                    // client buid output directory
|-- [docs]                    // document
|-- [public]                  // server static resources
|-- [server]                  // server
|-- [test]                    // unit test
|-- [types]                   // typescript types
|-- [utils]                   // util functions
|-- .babelrc                  // babel config
|-- .eslintignore             // eslint ignore list
|-- .eslintrc                 // eslint config
|-- .gitignore                // git ignore
|-- .nodemonrc                // nodemon config
|-- .prettierrc               // prettier config
|-- Dockerfile                // docker file
|-- LICENSE                   // fiora license
|-- docker-compose.yaml       // docker compose config
|-- jest.*.sj                 // jest config
|-- package.json              // npm
|-- tsconfig.json             // typescript config
|-- yarn.lock                 // yarn
...

截图

0条评论

递交一条评论

您的邮箱地址不会被公开。 必填项已用 * 标注

0条评论

递交一条评论

您的邮箱地址不会被公开。 必填项已用 * 标注