我有一个现有的 rails 应用程序,我想添加一个社区页面(由discourse提供支持)。最好在 example.com/community
有人可以推荐一种方法或指南将其添加到我现有的应用程序中吗?通常我只会添加一个宝石或其他东西。我不太了解文档中的设置指南。
是否像在我现有的 rails 应用程序中克隆 discourse 项目文件夹,然后将 example.com/community 路由指向 discourse 文件夹一样简单?
看起来 Discourse 是一个独立的 RoR 应用程序,应该这样运行。如果我需要为我现有的应用程序提供一个包含 Discourse 的社区页面,那么我会查看我的 Web 服务器的手册页如何为“example.com”主机设置“/community”虚拟目录以指向 Discourse 的代码库.
我个人选择的网络服务器是 Nginx,但是任何其他网络服务器也应该支持“虚拟目录”功能。这是我针对您的案例的 Nginx 配置示例:
server {
server_name www.example.com;
root /var/www/app;
location / {
# will execute your application's code, specified by the root above
}
location /community {
# will execute Discourse's code, whenever a user navigates to /community
root /var/www/discourse;
}
}
我对 Heroku 平台以及它们是否让您控制路由不是很熟悉。不幸的是,Heroku 关于HTTP 路由的平台手册页没有任何关于如何配置“虚拟目录”路由的参考...
希望它会给你进一步的方向去挖掘。