ApacheでRubyを起動したい
- #Ruby
- #Tips
- #Know-how
- 2018/06/16
ApacheでRubyを起動したい
PHPの様にApacheでRubyファイルを実行できたらと思い、動作確認を行ってみました。
Railsは使用していません、疎通確認のみです。
行った環境
- Ruby 2.5.1
- Apache 2.4
- Windows 10
実際の手順
apacheとRubyに関してはすでに環境構築済みとなっていることを前提で話します。
1). apacheのhttpdファイル
C:\Apache24\conf\httpd.conf にあるhttpd.confファイルをテキストエディタで開きます。
2). 大体380行目らへんにある
<Directory "c:/Apache24/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
をコメントアウトして
<Directory "c:/Apache24/htdocs">
AllowOverride All
Options +ExecCGI
Order allow,deny
Allow from all
Require all granted
</Directory>
を追加します。
3). 大体430行目らへんにある
#AddHandler cgi-script .cgi
がコメントアウトされているためこの下に
AddHandler cgi-script .cgi .rb
を追加する。
ここまでの設定で拡張子rbのファイルをcgiとして処理できるようになる。
4). rbファイルの配置
ファイルは C:\Apache24\htdocs の配下に置く
ファイルは
#!C:/Ruby25-x64/bin/ruby.exe
#rubyのexeファイルを実行時に指定すること
puts "Content-type: text/html\n\n"; #\n\nを加えないとエラーになってしまう(ログを見て確認)
puts "<html><head></head><body>Hello</body></html>"
のような感じで作成する。
この時先頭にRubyの実行環境についてしていすることとContent-typeを設定することを忘れずに!
5). 動作確認
最後にサーバーを立ち上げて
http://localhost/ファイル名.rb にアクセスし正常にHelloが出力されることを確認出来たら成功!!
Share:
X (Twitter)