在开发中,可以在多站点模式下运行 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 任务将定位默认站点。
要访问该站点,您需要使用 --forward-host 选项运行 ember-cli。
bin/ember-cli -u --forward-host
现在您应该可以在 http://alternate.localhost:4200 访问您的新站点,但如果无法访问,您可能需要将 alternate.localhost 添加到您的 /etc/hosts 文件或等效文件中。
本文档受版本控制 - 在 github 上建议更改。