0

如果没有具体的设置,我不知道如何描述这个问题,所以我不确定帖子标题是否非常有意义。

无论如何,我们有一个名为marketing在 Phusion Passenger 上运行的 Rails 应用程序。我们为PassengerVirtualHost设置了一个RailsBaseURI /marketing条目,以及/var/www/html/marketing指向文件系统单独部分中的Rails 目录的符号链接(例如/home/user1/marketing)。这一切都很好,我们可以点击应用程序ourdomain.com/marketing。Rails 应用程序有几条路线,例如/marketing/businesses/marketing/certificates,它们指向与我们营销部门的各种功能相对应的不同“子应用程序”。

现在,我有一个名为MarketingPeanuts支持 AIR 自动更新功能的独立 Adob​​e AIR 应用程序。简而言之,自动更新需要 AIR 安装程序包和服务器上的配置文件(“自动更新内容”),并且 AIR 应用程序代码指向此 URL。我希望自动更新的 URLourdomain.com/marketing/peanuts能够保持语义。但是,我不想将自动更新内容放入 Rails 目录,因为 1) MarketingPeanutsAIR 应用程序与 Rails 应用程序没有任何关系(除了作为营销部门的另一个功能),以及 2) 任何时候我需要要更新 AIR 应用程序,我必须重新部署 Rails 应用程序才能将最新的自动更新内容放到服务器上。

所以我想要做的是将 AIR 自动更新内容放在文件系统的完全不同的部分(比如/home/user2/marketing_peanuts),并以某种方式告诉 Apache,如果它看到特定的子 URL /marketing/peanuts,则指向这个位置,否则,发送所有其他/marketing/*子Rails 目录的 URL(/home/user1/marketing从上面)。虽然没有 Rails 抱怨路由不存在(尽管如果 Apache 可以解决这个问题,那么 Rails 问题甚至不应该存在)。

是否可以在 Apache 中做这种事情(我猜是的),如果可以,怎么做?

4

1 回答 1

2

您应该能够使用mod_alias(Apache 附带)来执行此操作。启用该模块,然后将其放在 Apache 配置中的某个位置:

Alias /marketing/peanuts /home/user2/marketing_peanuts
于 2013-01-08T17:09:52.007 回答