この方法は推奨されません:ApacheでRubyを動かす方法-CentOS7
ApacheでRubyをインストールしました。今度はフレームワークであるsinatraやRailsをブラウザで見られるようにしたいと思います。このやり方をしてもsinatraは動きません。
passengerをインストール
まずはpassengerをインストールします。
# gem install passenger
Rubyがインストールされていればgemはインストールすることができます。Rubyのインストールについてはこちらをご覧下さい。
Apacheのモジュールをビルド
# passenger-install-apache2-module
このあと基本的に全てエンターだけ押していてください。最後にテキストが表示されるのでそれをメモ帳などにコピーしてください。
LoadModule passenger_module /root/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/passenger-5.0.25/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /root/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/passenger-5.0.25 PassengerDefaultRuby /root/.rbenv/versions/2.3.0/bin/ruby </IfModule>
テキストはこんな感じででてきます。
後でテキストだけ見たい場合は
# passenger-install-apache2-module --snippet
でみることができます。
passenger.confの設定
# vi /etc/httpd/conf.d/passenger.conf
にて変更します
# Passenger base config LoadModule passenger_module /root/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/passenger-5.0.25/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /root/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/passenger-5.0.25 PassengerDefaultRuby /root/.rbenv/versions/2.3.0/bin/ruby </IfModule> # Delete Passenger's HTTP Header Header always unset "X-Powered-By" Header always unset "X-Rack-Cache" Header always unset "X-Content-Digest" Header always unset "X-Runtime" # Passenger tuning config PassengerMaxPoolSize 20 PassengerMaxInstancesPerApp 4 PassengerPoolIdleTime 3600 PassengerHighPerformance on PassengerStatThrottleRate 10 RailsSpawnMethod smart RailsAppSpawnerIdleTime 86400 PassengerMaxPreloaderIdleTime 0
これでApacheの再起動をすれば良いみたいです。
サンプルプログラムを書いてみる
main.rbとファイル名をします
puts 'Hello, world!'
後はruby main.rbといれれて返事が返ってくれば完璧です。
フレームワークをいれてどうやってブラウザで見れば良いんだろう・・・やり方がわかりません!
個人支援・寄付について
サイトラボでは個人支援・寄付を受けております。ご協力いただける方はお願いいたします。当サイトではビットコインで受け付けております。
- ビットコイン:3LHnADwZwUbic2L45EnVJEykiG6KfbqrwS