この方法は推奨されません:ApacheでRubyを動かす方法-CentOS7
ApacheでRubyをインストールしました。今度はフレームワークであるsinatraやRailsをブラウザで見られるようにしたいと思います。このやり方をしてもsinatraは動きません。
passengerをインストール
まずはpassengerをインストールします。 [c]
gem install passenger
[/c] Rubyがインストールされていればgemはインストールすることができます。Rubyのインストールについてはこちらをご覧下さい。
Apacheのモジュールをビルド
[c]
passenger-install-apache2-module
[/c] このあと基本的に全てエンターだけ押していてください。最後にテキストが表示されるのでそれをメモ帳などにコピーしてください。 [c] 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 [/c] テキストはこんな感じででてきます。 後でテキストだけ見たい場合は [c]
passenger-install-apache2-module --snippet
[/c] でみることができます。
passenger.confの設定
[c]
vi /etc/httpd/conf.d/passenger.conf
[/c] にて変更します [c]
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
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 [/c] これでApacheの再起動をすれば良いみたいです。
サンプルプログラムを書いてみる
main.rbとファイル名をします [ruby] puts 'Hello, world!' [/ruby] 後はruby main.rbといれれて返事が返ってくれば完璧です。 フレームワークをいれてどうやってブラウザで見れば良いんだろう・・・やり方がわかりません!
