# 发行部署
### 开发模式
通过 bee 创建的项目,beego 默认情况下是开发模式。
我们可以通过如下的方式改变我们的模式:
beego.RunMode = "prod"
或者我们在 `conf/app.conf` 下面设置如下:
runmode = prod
以上两种效果一样。
开发模式中
- 开发模式下,如果你的目录不存在 views 目录,那么会出现类似下面的错误提示:
2013/04/13 19:36:17 [W] [stat views: no such file or directory]
- 模板每次使用都会重新加载,不进行缓存。
- 如果服务端出错,那么就会在浏览器端显示如下类似的截图:
![](https://img.kancloud.cn/57/4a/574aa01f8ec12957f9098c74bc54275c_642x385.png)
### 发行部署
Go 语言的应用最后编译之后是一个二进制文件,你只需要 copy 这个应用到服务器上,运行起来就行。beego 由于带有几个静态文件、配置文件、模板文件三个目录,所以用户部署的时候需要同时 copy 这三个目录到相应的部署应用之下,下面以我实际的应用部署为例:
$ mkdir /opt/app/beepkg
$ cp beepkg /opt/app/beepkg
$ cp -fr views /opt/app/beepkg
$ cp -fr static /opt/app/beepkg
$ cp -fr conf /opt/app/beepkg
这样在 `/opt/app/beepkg` 目录下面就会显示如下的目录结构:
.
├── conf
│ ├── app.conf
├── static
│ ├── css
│ ├── img
│ └── js
└── views
└── index.tpl
├── beepkg
这样我们就已经把我们需要的应用搬到服务器了,那么接下来就可以开始部署了。
这里部署首先你需要把应用跑起来,这分为两种方式:
- [独立部署](./beego.md)
- [Supervisord 部署](./supervisor.md)
上面只是把应用程序完全暴露在外部,我们大多数的应用会在前端部署一个 nginx 或者 apache 利用这些成熟的 HTTP 服务器做负载均衡或者其他认证之类的。
- [Nginx 部署](./nginx.md)
- [Apache 部署](./apache.md)
- beego简介
- 为 beego 贡献
- 发布版本
- 升级指南
- beego安装升级
- Bee 工具的使用
- 快速入门
- 新建项目
- 路由设置
- Controller 运行机制
- model 逻辑
- view 编写
- 静态文件处理
- beego 的 MVC 架构介绍
- controller 设计
- 参数配置
- 路由设置
- 控制器函数
- XSRF 过滤
- 请求数据处理
- session 控制
- 过滤器
- flash 数据
- URL构建
- 多种格式数据输出
- 表单数据验证
- 错误处理
- 日志处理
- model设计
- 概述
- ORM 使用
- CRUD 操作
- 高级查询
- 原生 SQL 查询
- 构造查询
- 事务处理
- 模型定义
- 命令模式
- 测试用例
- 自定义字段
- FAQ
- view 设计
- 模板语法指南
- 模板处理
- 模板函数
- 静态文件处理
- 模板分页处理
- beego 的模块设计
- session 模块
- grace 模块
- cache 模块
- logs 模块
- httplib 模块
- context 模块
- toolbox 模块
- config 模块
- i18n 模块
- beego 高级编程
- 进程内监控
- API 自动化文档
- 应用部署
- 独立部署
- supervisor 部署
- Nginx 部署
- apache 部署
- beego 第三方库
- 应用例子
- 在线聊天室
- 短域名服务
- Todo 列表
- beego实用库
- 验证码
- 分页
- FAQ