2012-04-05 4 views
4

私は、apacheとpassengerを使用して自分のアプリケーションを自分のローカルサーバーに配備したいと思っていました。私は開発ライブラリや旅客の宝石のような前提条件をすべてインストールしました。次に、これらの行を/etc/apache2/httpd.confファイルに含めました。Passengerでレールを配備する

PassengerRoot /home/insane-36/.rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11 
PassengerRuby /home/insane-36/.rvm/wrappers/ruby-1.9.3-p125/ruby 

ここでは、/ etc/apache2/sites-available内にsampleappという名前のファイルを作成し、次の内容を入れました。

<VirtualHost *:80> 
ServerName sampleapp 
RailsEnv development 
DocumentRoot /home/insane-36/Documents/Web/Rails/sampleapp/public 
<Directory /home/insane-36/Documents/Web/Rails/sampleapp/public> 
    AllowOverride all 
    Options MultiViews 
    Order allow,deny 
    Allow from all 
</Directory> 
</VirtualHost> 

サイトを有効にして、ホスト名を/ etc/hostsファイルに追加しました。しかし、ServerNameを使ってサイトを参照しようとすると、パーミッションが拒否されました。

Forbidden 

You don't have permission to access/on this server. 

Apache/2.2.20 (Ubuntu) Server at sampleapp Port 80 

ここで何が間違っているのか分かりません。私は同じファイルを編集したり、サイトを無効にしたり、サイトを有効にしたり、Apacheを再読み込みしたりして、複数回それをやろうとしました。親切に私にこの問題の背後にある問題と解決策を提案してください。事前にあなたの助けをありがとう。

答えて

1

これはディレクトリ内のアクセス権の問題であり、デーモン自体ではありません。 DocumentRoot/home/insane-36/Documents/Web/Rails/sampleapp/publicにインデックスファイルがありますか?誰がそれを所有していますか? Apacheはどのように動作していますか?

+1

内の最後の行として付与が必要です。しかし、それでも私はそれを正しくすることができませんでした。 – Sandeep

+2

これはどのように答えですか?これはどのように作動しますか?今私は同じ問題に遭遇しています。ありがとう – iGbanam

+0

777に権限を設定することは、私のためのエラーを修正しません。 – Adi

1

私はそれが古い質問であることは知っていますが、まだそのエラーのためのGoogle検索のトップ結果です。

ソリューションは、追加することで、すべての仮想ユーザーのapacheの実行のように、私はWWW-データへの全体のRailsアプリケーションのアクセス許可を設定

<Directory /home/insane-36/Documents/Web/Rails/sampleapp/public> 
    AllowOverride all 
    Options MultiViews 
    Order allow,deny 
    Allow from all 
    Require all granted 
</Directory> 
関連する問題