2013-10-04 40 views
3

我有一个在Middleman Server上运行的Rails应用程序的ruby。我在Windows Azure Ubuntu虚拟机中安装了该应用程序。完成安装后,一旦我开始通过给这个命令“中间人服务器”启动我的服务器,我的应用程序运行良好。从那以后,我已经按照以下步骤安装该应用程序的Apache Web服务器Middleman服务器和云上的Apache

http://nathanhoad.net/how-to-ruby-on-rails-ubuntu-apache-with-passenger

但即时得到这个错误在完成上述步骤

“它的工作原理后!这是这个默认的网页服务器,网络服务器软件正在运行,但尚未添加任何内容。“

请帮助我如何安装通常在中间人服务器上运行的Rails应用程序的Web服务器。

+0

您是否正在运行Ruby on Rails应用程序或Middleman?通常Middleman用于使用命令'middleman build'生成静态网站。我不相信乘客会与中间人合作。 –

回答

1

你说你已经安装了Apache,还有你的Web服务器。如果您安装了Passenger,那么您的Rails或Middleman就有一个应用程序服务器。检查出Phusion Passenger users guide, Apache version。我跟着那个建立起来了。在运行middleman build后,您是否正在尝试查看src或查看build?你在建什么,Rails或Middleman app/site?

我一直在为中间人发展设置不同的方法搞乱。我结束了尝试几个不同的配置并将它们记录在Gist中。向下滚动,我的乘客版本上有一些信息,我对MM很新,这是我第一次尝试乘客,所以请考虑这一点。我觉得最棘手的部分是Passenger需要一个public文件夹,但Middleman根本不使用public文件夹。我认为带有中间人的乘客在其他方式上有更多的“陷阱”。查看我的Gist中的3.0。

我的虚拟主机文件看起来像这样:

# Testing Middleman Development Approaches #3 with Passenger, 
# note the public folder is used to serve the src directory 
<VirtualHost *:80> 
    ServerName mm_passenger.loc 
    DocumentRoot /Users/davekaplan/mm_passenger/public 
    ServerAlias mm_passenger.loc.*.xip.io 
    <Directory /Users/davekaplan/mm_passenger/public> 
     AllowOverride all 
     Options -MultiViews 
     Order allow,deny 
     Allow from all 
    </Directory> 
</VirtualHost> 

<VirtualHost *:80> 
    ServerName mm_passenger.build 
    DocumentRoot /Users/davekaplan/mm_passenger/build 
    <Directory /Users/davekaplan/mm_passenger/build> 
     AllowOverride all 
     Options -MultiViews 
     Order allow,deny 
     Allow from all 
    </Directory> 
</VirtualHost> 

我在Mac上运行的Apache和乘客。我为Apache /etc/apache/extra/httpd-vhosts.conf文件和我的/etc/hosts文件执行了虚拟主机(站点文件的路径)。

不要放弃!

Dave