我不知道如何在没有特定设置的情况下描述此问题,因此我不确定帖子标题是否非常有意义。
无论如何,我们在Phusion Passenger上运行了一个名为marketing
的Rails应用程序。我们将Passenger VirtualHost
设置为RailsBaseURI /marketing
条目,/var/www/html/marketing
符号链接指向文件系统单独部分中的Rails目录(例如/home/user1/marketing
) 。这一切都很好,我们可以在ourdomain.com/marketing
点击应用。 Rails应用程序有一些路由,如/marketing/businesses
和/marketing/certificates
,指向不同的"子应用程序"对应我们营销部门的各种功能。
现在,我有一个名为MarketingPeanuts
的独立Adobe AIR应用程序,它支持AIR自动更新功能。简而言之,autoupdate需要AIR安装程序包和服务器上的配置文件(" autoupdate contents"),AIR应用程序代码指向此URL。我希望autoupdate的URL为ourdomain.com/marketing/peanuts
来维护语义。但是,我不想将autoupdate内容放入Rails目录,因为1)MarketingPeanuts
AIR应用程序与Rails应用程序没有任何关系(除了作为营销部门的另一个功能),以及2 )每当我需要更新AIR应用程序时,我都必须重新部署Rails应用程序,以便将最新的自动更新内容放到服务器上。
所以我想要做的是将AIR自动更新内容放在文件系统的完全不同的部分(比如/home/user2/marketing_peanuts
),并以某种方式告诉Apache它是否看到特定的子URL /marketing/peanuts
,指向此位置,否则,将所有其他/marketing/*
子URL发送到Rails目录(/home/user1/marketing
从上面)。一直没有Rails抱怨不存在的路由(虽然如果Apache可以解决这个问题,那么Rails问题甚至不应该存在)。
是否有可能在Apache中做这种事情(我猜是的),如果是的话,怎么做?
答案 0 :(得分:2)
您应该可以使用mod_alias(Apache附带)执行此操作。启用该模块,然后将其放在Apache配置中的某个位置:
Alias /marketing/peanuts /home/user2/marketing_peanuts