GFAST-CMS
请务必先看一下前面的文档和goframe开发文档
CMS 前台
前台应用为 /internal/app/home
前台应用的API定义在 /api/v1/home 中
应用依赖ucenter模块
前台访问地址为: http://location:8808/home 如果需要修改 则修改 /internal/app/home/router/router.go 中 home的名称。修改为 / 则访问地址为根目录
如果使用nginx 来部署则不需要修改 home路由,请在nginx中增加反向代理,具体看最后面的nginx配置示例
group.Group("/home", func(group *ghttp.RouterGroup) {
// 对 /home 下的路径启用ucenter中间件
g.Server().BindMiddleware("/home/*", ucenterService.Middleware().Ctx)
// 绑定404错误跳转页面
g.Server().BindStatusHandler(404, func(r *ghttp.Request) {
if gregex.IsMatchString(`^/home/*`, r.RequestURI) {
view := homeService.CmsTemplate().GetCmsView(r)
homeService.HomeCommon().Success(r, view, "common/404.html")
}
})
// 绑定500错误跳转页面
g.Server().BindStatusHandler(500, func(r *ghttp.Request) {
if gregex.IsMatchString(`^/home/*`, r.RequestURI) {
view := homeService.CmsTemplate().GetCmsView(r)
view.Assign("errMsg", "服务器发生500错误:"+r.GetError().Error())
homeService.HomeCommon().Success(r, view, "common/500.html")
}
})
})
管理后台部署
修改配置文件 .env.production
# 线上环境
ENV = 'production'
# public path 配置线上环境路径(打包)、本地通过 http-server 访问时,请置空即可
# 如下配置访问地址为: http://域名/sys/ 注意后面的斜杠
VITE_PUBLIC_PATH = '/sys/'
# 线上环境接口地址
VITE_API_URL = '/prod-api/'
执行 npm build 编译管理端文件
nginx部署配置说明
以下是完整 nginx配置文件,请参考修改为自己的域名和路径
server
{
listen 80; # 监听端口
server_name demo.g-fast.cn; # 绑定域名
index index.php index.html index.htm default.php default.htm default.html; # 默认索引文件
root /www/wwwroot/demo.g-fast.cn; # root 网站根路径
#禁止访问的文件或目录
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
# 关键配置,管理后台路径重写定位到 http://域名/sys/index.html
location ^~ /sys/ {
try_files $uri $uri/ /index.html;
}
# 关键配置,上传文件路径重定位到golang 的上传目录
location ^~ /prod-api/upload_file/
{
alias /www/wwwroot/demo.g-fast.cn/go_app/resource/public/upload_file/;
}
# 关键配置,上传文件路径重定位到golang 的上传目录
location ^~ /upload_file/
{
alias /www/wwwroot/demo.g-fast.cn/go_app/resource/public/upload_file/;
}
# 关键配置,CMS的静态文件(.css,.js)重定位
location ^~ /cms/default/
{
alias /www/wwwroot/demo.g-fast.cn/go_app/resource/public/cms/default/;
expires 12h;
error_log /dev/null;
access_log /dev/null;
}
# 关键配置,CMS的公共静态文件地址代理,如表情文件
location ^~ /static/
{
alias /www/wwwroot/demo.g-fast.cn/go_app/resource/public/static/;
}
# 关键配置,后台接口 反向代理
location ^~ /prod-api/
{
proxy_pass http://127.0.0.1:8818/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
add_header Cache-Control no-cache;
}
# 将 /home/ 地址转发到 / 防止后台解析的url中带 /home/ 路径
location ^~ /home/
{
rewrite ^/home/(.*)$ /$1 permanent;
}
# 关键配置,将 http://域名/ 访问地址反向代理到 CMS 的 home 路由
location /
{
proxy_pass http://127.0.0.1:8818/home/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
add_header Cache-Control no-cache;
}
# 访问日志路径
access_log /www/wwwlogs/demo.g-fast.cn.log;
# 错误日志路径
error_log /www/wwwlogs/demo.g-fast.cn.error.log;
}
修正模板文件中的接口 APIBASE 地址
请修改 layout.html 中的 apibase 地址 var APIBASE = “/api/v1/“
// prod-api 为反向代理的地址
var APIBASE = "/prod-api/api/v1/"
模板文件
模板文件地址:/resource/template/cms/theme
样式文件地址:/resource/cms/
修改模板样式请在后台管理的CMS配置中修改 主题模板 默认模板为 default
作者:袁学飞 创建时间:2024-02-18 09:35
最后编辑:袁学飞 更新时间:2024-05-23 09:03
最后编辑:袁学飞 更新时间:2024-05-23 09:03