app.conf

    下面是个例子:

    每个段是一种 运行模式。最上面的 key (不在任何段内)对所有的运行模式有效。这使得默认值在所有模式中适用,并且根据需要被重写。[prod] 段仅用于 生产 模式。

    新建的Revel程序中默认定义了 devprod 模式, 你也可以自定义你需要的段。 程序启动时,根据 (命令行工具)“revel run” 提供的参数来选择运行模式。

    开发者可以自定义key,并通过 访问它们。这里公开了一些简单的 api

    app.name

    应用程序名称,用于控制台输出和开发web页。

    例如:

    1. app.name = Booking example application

    默认值: 无值


    app.secret

    密钥用于密码操作 ()。Revel 在内部使用它签署session cookies。设置为空将禁用签名。

    使用 revel new新建项目时,它被设置为一个随机的字符串。

    例如:

    1. app.secret = pJLzyoiDe17L36mytqC912j81PfTiolHm1veQK6Grn1En3YFdB5lvEHVTwFEaWvj

    默认值: 无值

    HTTP settings

    http.port

    监听端口

    例如:

    1. http.port = 9000

    http.addr

    监听ip地址

    Linux中, 空字符串代表通配符 – Windows中, 空字符串被转换为 "localhost"

    默认值: ””


    harness.port

    Specifies the port for the application to listen on, when run by the harness. For example, when the harness is running, it will listen on , run the application on harness.port, and reverse-proxy requests. Without the harness, the application listens on http.port directly.

    默认情况下,会选择一个随​​机的空闲端口。这仅仅是必要的,由该程序限制插座访问的环境中运行时设置。By default, a random free port will be chosen. This is only necessary to set when running in an environment that restricts socket access by the program.

    Default: 0


    http.ssl

    如果为真, Revel Web服务器将自行配置为接受SSL连接。这需要一个 X509 证书和一个 key 文件。

    默认值: false

    http.sslcert

    指定 X509 证书文件的路径

    默认值: ””

    http.sslkey

    指定 X509 证书 key的路径

    默认值: ””

    响应结果

    results.chunked

    确定模板渲染时是否使用 。分块编码可以减少发送到客户端的第一个字节的时间(在整个模板已经完全呈现数据之前)。


    results.pretty

    配置 和 RenderJson 生成缩进格式的 XML/JSON. 例如:

    默认值: false

    国际化 (i18n)

    i18n.default_language

    为消息翻译指定默认​​的语言,如果客户端请求的语言环境未确认。如果不指定,则返回一个虚拟的信息。

    例如:

    1. i18n.default_language = en

    默认值: ””


    指定存储用户语言环境的cookie名称

    默认值: “%(cookie.prefix)_LANG” (参考 cookie.prefix)

    监视

    Revel 监视项目改动,并支持几种类型文件的热重载。启用监视:

    1. watch = true

    如果为假, 禁用监视, 并忽略其他相关的监视配置 watch.* (适用于生产环境)

    默认值: true


    watch.templates

    如果为真, Revel 监视模板变化,必要时重新加载他们。

    默认值: true


    watch.routes

    如果为真, Revel 监视 routes 文件的变化,必要时重新加载。

    默认值: true


    watch.code

    如果为真, Revel 监视Go代码改动,必要时重新编译代码(作为反向代理运行)。

    app/ 目录(包括子目录)下的代码都被监视。

    默认值: true

    Revel 组件默认使用下面的 cookies:

    • REVEL_SESSION
    • REVEL_LANG
    • REVEL_FLASH
    • REVEL_ERRORS

    Revel 使用这个属性作为 Revel-produced cookies前缀。这样可以在同一台主机上运行多个REVEL应用程序。

    例如,

    则对应的 cookie 名称如下:

    • MY_SESSION
    • MY_LANG
    • MY_FLASH
    • MY_ERRORS
      默认值: “REVEL”

    Session

    session.expires

    Revel 使用这个属性设置session cookie的有效期。 Revel 使用 解析字符串,默认值是 30 天。也可以设置为会话结束时过期。 请注意,客户端的行为依赖于浏览器的设置,所以结果并不总是保证。

    模板

    template.delimiters

    指定模板左右分隔符必须这样指定分隔符 “左分隔符 右分隔符”

    默认值: “{{ }}”

    格式化

    format.date

    指定默认的日期格式,Revel在两个地方使用它:

    • 绑定日期参数到 time.Time (参考 binding)
    • 在模板中使用 date 模板函数输出日期 (参考 )
      默认值: “2006-01-02”

    format.datetime

    指定默认的日期时间格式,Revel在两个地方使用它:

    • 绑定日期参数到 time.Time (参考 )
    • 在模板中使用 datetime 模板函数输出日期 (参考 模板函数)
      默认值: “2006-01-02 15:04”

    数据库

    db.import

    默认值: ””


    db.driver

    指定 database/sql 驱动程序名称 (在sql.Open中使用).

    默认值: ””


    db.spec

    指定 database/sql 数据源名称 (在 sql.Open中使用).

    默认值: ””

    build.tags

    Build tags 构建程序的时候使用。

    默认值: ””

    日志

    TODO

    缓存

    模块是一个简单的堆或分布式缓存接口

    cache.expires

    设置缓存过期时间。在程序中调用者使用常量cache.DEFAULT获取。

    它是接受一个 字符串。

    (目前还不能指定默认值为 FOREVER)

    默认值: “1h” (1 小时)


    cache.memcached

    如果为真, 缓存模块使用 来代替内存缓存。

    默认值: false


    cache.hosts

    一个逗号分隔的 memcached 主机列表。缓存条目使用确定的主机名缓存key自动分片到可用的主机中。主机可能会多次列出,以增加共享的缓存空间。

    默认值: ””

    计划任务

    计划任务 模块允许你运行计划任务或者临时任务

    时间表

    时间表可以通过key来配置。

    时间表的计划时间可以在执行器中提交任务时使用。例如:

    1. jobs.Schedule("cron.schedulename", job)

    jobs.pool

    允许同时允许的任务数量。例如:

    如果为 0, 则没有数量限制

    默认值: 10


    jobs.selfconcurrent

    如果为真, 允许一个任务运行,即使是该任务的实例仍在进行中。

    默认值: false

    模块

    通过指定导入路径将模块添加到应用程序中。例如:

    1. module.testrunner = github.com/revel/revel/modules/testrunner
    • 允许使用命令行参数配置值或以其他方式在命令行中指定值。