Golang Go语言中 用 golang 写了一个个人站点-大家轻点喷
Golang Go语言中 用 golang 写了一个个人站点-大家轻点喷
Shalog
Shalog 是一个基于 Golang 开源的轻量级内容管理系统,告别 PHP 类的繁琐的部署方式,超底的资源占用率,并且支持图床功能当然也可以使用七牛作为存储方式,支持 Docker 、k8s 部署。
项目设计
支持内容自定义,支持模版自定义,支持图床功能,支持 Mweb,Metaweblog API 。
内容展示
项目开源地址:https://github.com/icowan/shalog
管理后台前端
开源地址: https://github.com/icowan/blog-view
使用 ReaceJS 作为管理后台的前端展示,如下图:
演示 Demo
演示地址: https://shalog.nsini.com
演示管理后台地址: https://shalog.nsini.com/admin/
用户名: shalog
密码: admin
安装说明
平台后端基于go-kit、前端基于 umijs 和 ant-design框架进行开发。
后端所使用到的依赖全部都在go.mod里,前端的依赖在package.json
,详情的请看yarn.lock
,感谢开源社区的贡献。
后端代码: https://github.com/icowan/shalog
前端代码: https://github.com/icowan/shalog-view
快速开始
配置文件准备, app.cfg以下为参考:
[server]
app_name = shalog
app_key = R*9N*Q#ROFJI
debug = false # 是否启用调试模式
log_level = error # warning error info debug
logs_path = /var/log/shalog.log
session_timeout = 14400 # 管理后台登录 token 失效时间
[mysql]
host = mysql # 数据库地址
port = 3306 # 数据库端口
user = root
password = admin
database = shalog
[cors]
allow = false # 是否支持跨域
origin = http://localhost:8000
methods = GET,POST,OPTIONS,PUT,DELETE
headers = Origin,Content-Type,Authorization,mode,cors,x-requested-with,Access-Control-Allow-Origin,Access-Control-Allow-Credentials
docker-compose 启动
在您的电脑上安装 docker-compose 命令,请参考: https://docs.docker.com/compose/install/
创建 docker-compose.yaml
文件:
version: '3'
services:
mysql:
image: mysql:5.7.29
environment:
MYSQL_ROOT_PASSWORD: "admin"
MYSQL_DATABASE: "shalog"
command: [
'--character-set-server=utf8mb4',
'--collation-server=utf8mb4_unicode_ci',
]
expose:
- "3306"
ports:
- "3306:3306"
shalog:
image: dudulu/shalog:latest
command: /go/bin/shalog start -p :8080 -c /etc/shalog/app.cfg
environment:
GOPATH: "/go"
USERNAME: "shalog"
PASSWORD: "admin"
SQL_PATH: ./database/db.sql
volumes:
- ./app.cfg:/etc/shalog/app.cfg
depends_on:
- mysql
restart: always
ports:
- "8080:8080"
将上面准备好的 app.cfg 放到当前目录,然后执行以下命令:
$ docker-compose start
浏览器输入: http://localhost:8080
访问
本地启动
- Golang 1.13+ 安装手册
- MySQL 5.7+ (大多数据都存在 mysql)
修改 app.cfg
文件,将 mysql 地址配置为您自己的数据库地址。
克隆代码,及本地启动
$ git clone github.com/icowan/shalog.git
$ cd shalog/
$ make run
浏览器输入: http://localhost:8080
访问
文档
支持我
更多关于Golang Go语言中 用 golang 写了一个个人站点-大家轻点喷的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
为什么要轻喷?
更多关于Golang Go语言中 用 golang 写了一个个人站点-大家轻点喷的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
感觉挺好的啊
不错 支持
挺好的
没钱,精神上支持(狗头
写的很好,不过下一秒改改就是我的了[狗头]
下一秒改改就是我的了[狗头]
下一秒改改就是我的了[狗头]
楼主,演示站太慢了,进不去
不错啊。mark 一下。抽空看看
后台会有点慢,加载的前端资源比较大
有空欢迎留下友链
断断续续一个月吧
下一秒改改就是我的了[狗头]
告别 PHP 类的繁琐的部署方式??? 明明是你这个更繁琐 php 网站都不用部署的直接扔进云虚拟主机
前端代码在哪呢
嗯,这个可以直接 make run 或 docker-compose start 或者直接编译成二进制丢上去 环境都不需要
我这种只会简单用 wp 的家伙投来崇拜的目光
手动点赞
下一秒就是我用 flutter 撸了一个,求轻喷
很高兴看到你使用Go语言(Golang)开发了一个个人站点!Go语言以其简洁、高效和强大的并发处理能力而闻名,非常适合构建高性能的Web应用。以下是一些建议,希望能帮助你进一步提升站点质量和用户体验:
-
性能优化:Go语言在性能上有很大优势,但确保你充分利用了这些优势。检查你的代码,看是否有可以优化的地方,比如使用更高效的算法、减少不必要的内存分配等。
-
安全性:确保你的站点在安全性方面做得足够好。处理用户输入时要小心,防止SQL注入、跨站脚本(XSS)等常见安全问题。使用HTTPS来保护数据传输。
-
代码质量:保持代码整洁、可读性强。遵循Go语言的编码规范,使用合适的命名、注释和代码结构。
-
用户体验:关注用户体验,确保站点加载速度快、界面友好。优化前端性能,比如压缩CSS、JavaScript和图片等资源。
-
持续集成/持续部署(CI/CD):考虑设置CI/CD流程,自动化测试、构建和部署过程,以提高开发效率和代码质量。
-
反馈和迭代:鼓励用户反馈,并根据反馈不断迭代改进你的站点。
最后,不要害怕被“喷”,每个开发者都是从不断试错和改进中成长起来的。保持积极的心态,持续学习和进步,你的站点一定会越来越出色!