0

私はlinodevpsを使用してrailsアプリケーションをデプロイしています。rubyとrails、mysql、apacheをpassengerで正常にインストールしました。

これが/etc/hostにある私のホストファイルです

     127.0.0.1                          localhost.localdomain localhost
     198.58.100.126                     foo.qitch1.com       foo

また、httpd.confファイルにpassengerをインストールした後にいくつかの行をコピーしました

   LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p194@global/gems/passenger-3.0.17/ext/apache2/mod_passenger.so

   PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p194@global/gems/passenger-3.0.17

  PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p194@global/ruby

これはapache2.confに含まれています

今、私は/ atc / apache2/sites_availableにgenerate_pdf.comという名前でファイルを作成します

ここで、generate_pdfは私のアプリの名前であり、このファイルにはコードが含まれています

         NameVirtualHost *:80

 <VirtualHost *:80>
   ServerName aziz.qitch1.com
   DocumentRoot /var/www/generate_pdf/public
   RailsEnv production
   <Directory /var/www/generate_pdf/public>
    Allow from all
    Options -MultiViews
    </Directory>
</VirtualHost>

しかし、サーバーを起動してこのURLにアクセスするとaziz.qitch1.com

何もロードされておらず、これはシェルにあります

     NameVirtualHost *:80 has no VirtualHosts

助けてください

4

1 に答える 1

0

私は関連する問題に取り組んでいて、VirtualHost を置くことを提案したhttp://old.thoughtsincomputation.com/posts/using-phusion-passenger-and-apache2-on-ubuntu-with-rvm-and-gemsetsに出くわしましたコードで/etc/apache2/conf.d/virtual.conf。これで私の問題は解決しました。あなたの問題にも役立つかもしれません。

記事で使用していないことに注意してくださいIfModule。私の VirtualHost コードは次のとおりです。

<VirtualHost *:80>
   ServerName www.yournamehere.com
   # !!! Be sure to point DocumentRoot to 'public'!
   DocumentRoot /rails_app_folder/app_name/public
   <Directory /rails_app_folder/app_name/public>
      # This relaxes Apache security settings.
      AllowOverride all
      # MultiViews must be turned off.
      Options -MultiViews
   </Directory>
</VirtualHost>
于 2013-03-06T16:16:21.033 に答える