Linux インストール · 1 min read · Nov 20, 2025
ISPConfig(2.2.20以上)で使用するためのさまざまなLinuxディストリビューションにmod_rubyをインストールする方法
ISPConfig(2.2.20以上)で使用するためのさまざまなLinuxディストリビューションにmod_rubyをインストールする方法
バージョン 1.0
著者: Falko Timme
バージョン2.2.20から、ISPConfigはRubyの組み込みサポートを提供しています。CGI/FastCGIの代わりに、ISPConfigはサーバーのApacheにmod_rubyが利用可能であることに依存しています。この記事では、ISPConfigがサポートするさまざまなディストリビューションにmod_rubyをインストールする方法を説明します。
これがあなたにとって機能するという保証はありません!
1 Debian Etch / Ubuntu 7.10
Debian EtchおよびUbuntu 7.10では、次のコマンドを実行するだけです(rootとして):
apt-get install libapache2-mod-ruby全く設定は必要ありません。
2 Fedora 8 / CentOS 5.1
Fedora 8およびCentOS 5.1では、mod_rubyパッケージが利用できないため、自分でコンパイルする必要があります。まず、いくつかの前提条件をインストールします:
yum install httpd-devel ruby ruby-devel次に、mod_rubyを次のようにダウンロードしてインストールします:
cd /tmp
wget http://www.modruby.net/archive/mod_ruby-1.2.6.tar.gz
tar zxvf mod_ruby-1.2.6.tar.gz
cd mod_ruby-1.2.6/
./configure.rb --with-apr-includes=/usr/include/apr-1
make
make install最後に、mod_rubyモジュールをApacheの設定に追加する必要があるため、ファイル/etc/httpd/conf.d/ruby.confを作成します…
vi /etc/httpd/conf.d/ruby.conf| LoadModule ruby_module modules/mod_ruby.so |
… そしてApacheを再起動します:
/etc/init.d/httpd restart3 Mandriva 2008.0
Mandriva 2008.0にはmod_rubyパッケージがあり、次のようにインストールできます:
urpmi apache-mod_rubyそのパッケージには、すべてのウェブサイトに対してmod_rubyをグローバルに有効にするmod_rubyの設定が付属しています。したがって、ISPConfigでウェブサイトごとに有効にできるように、今は無効にする必要があります:
vi /etc/httpd/modules.d/20_mod_ruby.confそのファイル内の以下の行を除いてすべてコメントアウトまたは削除します:
| |
その後、Apacheを再起動します:
/etc/init.d/httpd restart4 OpenSUSE 10.3
OpenSUSE 10.3にはmod_rubyパッケージがないため、手動でコンパイルする必要があります。まず、前提条件をインストールします:
yast -i apache2-devel ruby ruby-develその後、次のようにmod_rubyをビルドします:
cd /tmp
wget http://www.modruby.net/archive/mod_ruby-1.2.6.tar.gz
tar zxvf mod_ruby-1.2.6.tar.gz
cd mod_ruby-1.2.6/
./configure.rb --with-apr-includes=/usr/include/apr-1
make
make installmod_rubyを有効にするために、/etc/sysconfig/apache2を開き、APACHE_MODULES行にrubyを追加します。例えば、次のように:
vi /etc/sysconfig/apache2| [...] APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 rewrite ruby" [...] |
その後、次のコマンドを実行します:
SuSEconfigそしてApacheを再起動します:
/etc/init.d/apache2 restart5 mod_rubyの使用
ISPConfigでドキュメントルート/var/www/web1/webのウェブサイトを作成したと仮定しましょう。そのウェブサイトにRubyを有効にすると、ISPConfigはウェブサイトのApache vhost設定に次のようなものを追加します:
| |
(ISPConfigを使用していない場合は、もちろん、これを手動でvhost設定に追加できますが、パスを調整し、Apacheを再起動するのを忘れないでください。)
mod_rubyが機能しているかどうかを確認するために、Rubyファイル/var/www/web1/web/hello_world.rbを作成します:
vi /var/www/web1/web/hello_world.rb| # Greeterクラス class Greeter def initialize(name) @name = name.capitalize end def salute puts "Hello #{@name}!" end end # 新しいオブジェクトを作成 g = Greeter.new("world") # "Hello World!"を出力 g.salute |
そのファイルは実行可能でなければならないので、次のコマンドを実行します:
chmod 755 /var/www/web1/web/hello_world.rbこれで、ブラウザでファイルを呼び出すことができます。すべてがうまくいけば、Hello World!メッセージが表示されるはずです。
6 リンク
- mod_ruby: http://www.modruby.net
- Ruby: http://www.ruby-lang.org
- ISPConfig: http://www.ispconfig.org
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。