frei

旧「anney's room」からブログ「frei」だけ引っ越し&残しました

mod_ruby入ったかな?

アホや…私はアホなんや…。

以前から使ってたcoLinux

root領域の容量増やそうとして失敗したもんだから

Debian のイメージを持ってくる所から、やりなおし。

作業する前に、イメージをコピーしときゃあいいのに。>自分

かくして、ネット接続するところまでは

過去の日記を参考にして、サクッと設定したんだけど

もうとにかく配布されてるDebianイメージには、いろいろ入ってないもんだから

apt-getで次々インストール。

wget, ssh, locales, gcc, gawk, make, libc5-dev, libc6-dev,

rpm, g++, cpp, nkf, proftpd, libiconv…。

仕事関連で、連休中に作業しといた方が良い事をバタバタ片付けてから

ついでに Ruby 環境も整えたりなんかして。

で、Ruby はサクっと apt-get install ruby でインストールできたんだけど

mod_ruby で少々苦戦したので、メモメモ。

mod_rubywget でダウンロードしてきてから解凍。

早速、READMEに従って、./configure.rb したら、

./configure.rb no such file to load -- mkmf (LoadError)

と言ってきた。こんな早くコケますか。

仕方ないので mkmf.rb って何処に入ってるのよ?とググってみたら

ruby-dev がないとアカンとかって話。

が、素直に apt-get install ruby-dev って打ってみたら、今度はaptさんが

「そんなもん、もうあらへんで。ruby1.6-dev に入ってるみたいだけどね」とか言うので

apt-get install ruby1.6-dev でダウンロード。

ところが、それでもなお、mkmf がないと configure.rb が騒ぐので

configure.rb 中の require 'mkmf' の部分をフルパスで指定してみるもダメ。

仕方ないので他に方法がないのかと、またググってみると

apt-get install libapache-mod-ruby liberuby

ってパッケージ名が「やまだあきらさんのサイト」に書いてあった。

おぉ。コマンド一発で解決。

あとはサイトの指示通りに usr/share/doc/libapache-mod-ruby/examples/httpd.conf-apache1 の通りに

/etc/apache/httpd.conf 内に追記して、/usr/sbin/apachctl restart 。

CGI動作するディレクトリ内に試しに index.rbx を作成してみたら

ブラウザーで見ると、Ruby スクリプトがダラダラ文字列として表示されている。

どうやら perl みたいに print "Content-type: text/html\n\n" って書いたんじゃダメで

なぜContent-Typeがブラウザに表示されるのですか?」を参考にして

#!/usr/bin/ruby

require "cgi"

cgi = CGI.new

print cgi.header("type" => "text/html")

puts "test ruby"

exit

としたら、ちゃんと出るようになったのでした。ふぅ。

いいのかな、こんなんで(汗)

あ、PHPもインストールしとかなきゃ。DBの類もね。あーうー。

その他、参考にしたサイト:

mod_ruby Wiki

eruby + mod_ruby のすすめ

Ruby Blog.de