在开发环境中以多站点模式运行 Discourse 是可行的。多站点服务器为每个服务的站点使用不同的数据库和主机名。如果您正在开发需要兼容多站点的功能或插件,这非常有用。
您只需添加一个合适的 config/multisite.yml 文件,例如:
---
alternate:
adapter: postgresql
database: discourse_alternate
host_names:
- alternate.localhost
要对这些额外站点运行 Rake 任务,只需添加名为 RAILS_DB 的环境变量,并指定目标站点的名称:
RAILS_DB=alternate rake db:create
RAILS_DB=alternate rake db:migrate
某些 Rake 任务比较特殊:在开发环境中未指定 RAILS_DB 时,它们会在所有站点上运行:
rake db:create
rake db:migrate
不过,通常情况下,未设置 RAILS_DB 时运行 Rake 任务将针对默认站点。
要访问该站点,请启动开发服务器:
bin/dev
您现在可能可以通过 http://alternate.localhost:3000 查看新站点。如果无法访问,您可能需要将 alternate.localhost 添加到您的 /etc/hosts 文件或等效配置中。
本文档受版本控制——请在 GitHub 上提出修改建议。