我從來沒有部署之前的程序,現在我不能讓它在我的domain.com顯示我在乘客/ sinatra/apache中做了什麼錯誤....?
我的服務器是liquidweb,它具有的Apache2
我做gem install passenger
我跑passenger-install-apache2-module
和一切安裝正確。
我以root身份登錄,並添加以下到httpd.conf中:
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.11
PassengerRuby /usr/local/bin/ruby
我還添加了這一點,但這個(病粘貼如下)是我很困惑。在下面的部分中,虛擬主機的路徑應該是相對於ROOT或實際的域根。例如絕對根目錄我的應用程序公共目錄的路徑是/home/why/app/public
...但從帳戶根目錄它只是/app/public
我不知道要放哪一個。此外,它是否必須在public_html?現在我把應用程序文件夾中的域的不僅僅是根,而不是在的public_html
<VirtualHost *:80>
ServerName www.domain.org
DocumentRoot /home/why/app/public
<Directory /home/why/app/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>
當我訪問domain.org,它只是顯示的默認頁面...
Index of/
Apache/2.2.19 (Unix) mod_ssl/2.2.19 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 Phusion_Passenger/3.0.11 Server at www.domain.org Port 80
我是否需要做其他事情?大家都說這很容易,它不會加載。另外,我對httpd.conf所做的所有更改都重新啓動了apache,但仍然無濟於事。
我正在使用sinatra。繼承人我的config.ru。註釋掉部分是我config.ru的本地版本,如果我跑rackup config.ru
的正常工作:
#require File.dirname(__FILE__) + "/main"
#run Sinatra::Application
require 'sinatra'
Sinatra::Application.default_options.merge!(
:run => false,
:env => ENV['RACK_ENV']
)
require 'main'
run Sinatra.application
不知道還有什麼有做...謝謝!