「ruby/サンプル/@pagesでruby/環境構築(Windows+ruby+apache2)その2」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
[[環境構築(Windows+ruby+apache2)>ruby/サンプル/環境構築(Windows+ruby+apache2)]]の続きです。
* rubyのパスを@pagesの環境に合わせる
rubyを「C:\ruby」にインストールしたため、ローカルのrubyのパスは「/ruby/bin/ruby」になっています。
このまま@pagesに上げてもCGIとして動かないので、@pagesの環境に合わせましょう。
* ディレクトリ作成
1.Cドライブに「C:\usr\local\bin」ディレクトリを作成
&ref(環境構築2-1.png)
* シンボリックリンク作成
1.rubyインストールディレクトリの「bin」ディレクトリを開きます。今回は「C:\ruby\bin」
&ref(環境構築2-2.png)
2.「C:\usr\local\bin」ディレクトリに「ruby.exe」を右クリックでドラッグ&ドロップします。
&ref(環境構築2-3.png)
3.ドロップするとメニューが開くので「シンボリックリンクをここに作成」を選びます。
&ref(環境構築2-4.png)
※Windows7以外の場合は[[Link Shell Extension>http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html]]を使うといいかもです。
* サンプルCGI修正
@pagesのruby設定に合わせて、前回作ったサンプルCGIを修正します。
前回作ったサンプルのrubyは「/ruby/bin/ruby」
@pagesのrubyは「/usr/local/bin/ruby」です。
また、Windowsにインストールしたapache2用に改行コードを「CR+LF」にしましたが、
@pagesで動かすには「LF」にする必要があります。
* 修正前(hello.cgi)
#highlight(ruby){{
#!/ruby/bin/ruby
puts(<<"html")
<html>
Hello ruby!!
</html>
html
}}
* 修正後(hello2.cgi) ※改行コードLF
#highlight(ruby){{
#!"/usr/local/bin/ruby"
print "Content-type: text/html\n\n"
puts(<<"html")
<html>
!!!Hello ruby!!!
</html>
html
}}
修正するのは一行目と改行コードだけでよいのですが、折角なので!を増やして置きました。
CGIの改行コードが「LF」だと、Windowsのapache2には改行のない一行のテキストファイルに見えるのではないかと思いますが、
rubyのパスをダブルクォーテーションで囲む事で、改行なしでもapache2にCGIを実行するプログラムを伝える事が出来るようです。
上手くいけば「http://localhost/cgi-bin/hello2.cgi」にアクセスすると下のような表示になるはずです。
&ref(環境構築2-5.png)
以上っ
[[環境構築(Windows+ruby+apache2)>ruby/サンプル/環境構築(Windows+ruby+apache2)]]の続きです。
* rubyのパスを@pagesの環境に合わせる
rubyを「C:\ruby」にインストールしたため、ローカルのrubyのパスは「/ruby/bin/ruby」になっています。
このまま@pagesに上げてもCGIとして動かないので、@pagesの環境に合わせましょう。
* ディレクトリ作成
* 1.Cドライブに「C:\usr\local\bin」ディレクトリを作成
&ref(環境構築2-1.png)
* シンボリックリンク作成
* 1.rubyインストールディレクトリの「bin」ディレクトリを開きます。今回は「C:\ruby\bin」
&ref(環境構築2-2.png)
* 2.「C:\usr\local\bin」ディレクトリに「ruby.exe」を右クリックでドラッグ&ドロップします。
&ref(環境構築2-3.png)
* 3.ドロップするとメニューが開くので「シンボリックリンクをここに作成」を選びます。
&ref(環境構築2-4.png)
※Windows7以外の場合は[[Link Shell Extension>http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html]]を使うといいかもです。
* サンプルCGI修正
@pagesのruby設定に合わせて、前回作ったサンプルCGIを修正します。
前回作ったサンプルのrubyは「/ruby/bin/ruby」
@pagesのrubyは「/usr/local/bin/ruby」です。
また、Windowsにインストールしたapache2用に改行コードを「CR+LF」にしましたが、
@pagesで動かすには「LF」にする必要があります。
* 修正前(hello.cgi)
#highlight(ruby){{
#!/ruby/bin/ruby
puts(<<"html")
<html>
Hello ruby!!
</html>
html
}}
* 修正後(hello2.cgi) ※改行コードLF
#highlight(ruby){{
#!"/usr/local/bin/ruby"
print "Content-type: text/html\n\n"
puts(<<"html")
<html>
!!!Hello ruby!!!
</html>
html
}}
修正するのは一行目と改行コードだけでよいのですが、折角なので!を増やして置きました。
CGIの改行コードが「LF」だと、Windowsのapache2には改行のない一行のテキストファイルに見えるのではないかと思いますが、
rubyのパスをダブルクォーテーションで囲む事で、改行なしでもapache2にCGIを実行するプログラムを伝える事が出来るようです。
上手くいけば「http://localhost/cgi-bin/hello2.cgi」にアクセスすると下のような表示になるはずです。
&ref(環境構築2-5.png)
以上っ