【Ruby】RubyでCGI
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2001/05/04(金) 12:57ID:c4hRtzGY関連リンクは>>2-3
0521nobodyさん
04/02/28 08:19ID:???Ruby 1.8.0 に添付されてた yaml なんだけど、
自己参照の多い、ちょっと複雑なArrayとかがまともに保存できなかったので
使うのをyamlことにしたんだけど、新しいのが出てるのかな?
0522nobodyさん
04/02/28 09:13ID:???mod_ruby だと高速化のためにプロセスを使い回すわけだから、
タイミングによっては def text してないスクリプトで text が
呼べてしまう現象が起きてしまうかも。
こういうのは不可解なバグにつながる危険があるから、
本当におすすめできません。
>>521
まともって??
とりあえず 1.8.1 使いましょう。
0524nobodyさん
04/02/28 23:47ID:???CGIスクリプトの一行目は
#!usr/local/bin/rubyでいいのでしょうか?
0525nobodyさん
04/02/29 00:11ID:???なにをどうインストールしたのでしょう?
もし ruby-1.8.1-i386-mswin32.zip を C:\ に展開したのでしたら、
c:\bin\ruby なので #!/bin/ruby になります。
0527507
04/03/02 00:09ID:???あーKernel.module_eval は駄目なんですか
うーん、最初のRubyRequire cgiに戻しました
mainでdefしない、は正直厳しいんです。
1.6->1.8変更の
>Module#include [change]
>トップレベルの include は、第二引数に true を指定した load でロードされるスクリプトのもとでは
>モジュールの機能を self に extend するように変更されました。
ってのが原因?
load(file,true)自体の説明は1.6,1.8とも変わってないんで
0528nobodyさん
04/03/02 00:43ID:???mod_ruby 側でない?
書き換え量が気にならないなら、こうするのがベターです。
module Func
def text
p "text"
end
extend self # おまじない
end
Func.text
0530nobodyさん
04/03/02 10:31ID:???module_function は private と同じで、指定したものだけか、
もしくはそれ以後に def されたものだけ公開します。
それに対して extend self は全て公開します。
関数群の名前空間に使うのならこちらのほうがお手軽です。
0531nobodyさん
04/03/04 02:10ID:???recent_list.rb で表示されるタイトルが
a.rb を使って <%= a %> の形式で書いていると
そのままで変換されません。
どこをどう変えれば良いのでしょうか?
Ruby が全然読めない私にも救いの手を・・・
0532nobodyさん
04/03/04 04:36ID:???0535nobodyさん
04/03/06 17:37ID:C+c5xFRdApache: 1.3.29
mod-ruby: 1.0.7
ruby : 1.6.7(fink)
スクリプト中でアーキテクチャ依存のモジュールをrequireすると
エラーになります。
例えば
#!/sw/bin/ruby
require 'nkf' # for test
require 'cgi'
cgi = CGI::new
cgi.out() {
"<html><body>test</body></html>"
}
をhoge.rbxとして保存してアクセスすると
0536nobodyさん
04/03/06 17:39ID:C+c5xFRd/Users/hoge/Sites/honesty/hoge.rbx:3:in `require': (null) - /sw/lib/ruby/1.6/pow
erpc-darwin6.6/nkf.bundle (LoadError)
from /Users/hoge/Sites/honesty/hoge.rbx:3
from /sw/lib/ruby/1.6/apache/ruby-run.rb:70:in `load'
from /sw/lib/ruby/1.6/apache/ruby-run.rb:70:in `handler'
from ruby:0
と怒られます。
なお、同じスクリプトをhoge.cgiとして保存してCGI経由でアクセスすると
エラーは起こりません。
0537nobodyさん
04/03/06 23:59ID:???mod_ruby の場合は apache ので動くからね。
0538535=536
04/03/07 08:34ID:xKL6fKn7同じ字面のスクリプトがCGIで動くので大丈夫だと思います。
hoge.rbxは755, nkf.bundleは555(ownerはroot)です。
あと、*.rbのモジュールは問題なくrequireできますし、
同じスクリプトをLinuxに持っていっても問題なく動きます。
0540nobodyさん
04/03/12 10:37ID:XHgrIkQVhttp://www.starware.one.pl/software/sws/index.html
http://www.starware.one.pl/software/sws/doc/docbook/index.html
だれか使ってみて。
0542nobodyさん
04/03/12 17:59ID:???EOFにあたるDBライブラリもリンクしときます。
http://www.starware.one.pl/software/sds/
まだ試してはいないんだが、DBライブラリのほうはコンパクトにまとめてあるみたいだね。
SWSと組み合わせて使うのが前提なのかもしれないな。
0543541
04/03/12 19:58ID:???0544nobodyさん
04/03/12 20:34ID:lAf/ivCVくだらないと思った。
Javaじゃないんだからそんなフレームワークとかなんとかってやめようよ。
普通に組むのが一番いいんだよ。
0545nobodyさん
04/03/12 22:17ID:???0546nobodyさん
04/03/12 23:16ID:???それですむ場合も多いとは思うけど、やっぱり仕事とかで大量のページ遷移を
作らなきゃいかんときは、フレームワークあったほうが便利だわな。
究極的には自分用(もしくは会社用)フレームワークを自作すればいいんだが。
0547nobodyさん
04/03/13 07:00ID:???0548nobodyさん
04/03/13 14:52ID:???CGIKIT見りゃ分かるけど、ウェブ用のフレームワークって手間かかるだけで無意味
作るものに合わせて土台を作っていくのが普通だよ あらかじめ作るフレームワークは無駄なだけ
0550nobodyさん
04/03/14 14:14ID:VM4bxA2x過去ログに車輪の再発明とかでてるけど、
Strutsやらなにやらは古タイヤの再利用くらいだとおもう。
ほしい物に似てるけどちょっと違うんだなあ。
だから車体を古タイヤに合わせて設計してみました、みたいな。
似たようなもの毎回作っちゃってもいいんじゃないの?
設計の再利用ってもう流行ってないのかな。
実装なんて再利用しようとても毎回しっくりこないんじゃない?
これ、JBossというかEJBのときにも思った。
既存の道具生かすためになんか本体側で無駄な苦労してるなあと。
0551nobodyさん
04/03/14 17:50ID:???そのあたりはそれこそ、その時々の事情や状況によるものなので、
フレームワークが役立つときもあれば、役立たないときもあるのは当たり前なので、
使う人が勝手にすればいいじゃん。
なので、>>544 よ、君の意見は確かに君にとってはもっともかもしれないが、
「くだらない」かどうかは人によって違うので、他の人に対して「やめよう」と言う必要は
無いんじゃないかな? もちろん、何言おうが君の勝手だけれど。
で、この話は終わりだと思うのだが。
0552nobodyさん
04/03/14 22:44ID:???0553nobodyさん
04/03/15 06:15ID:???EOFの真似というのでかなり興味をそそられるのだが、
この手のもので、どれが一番広まりそうかな。
大きいアプリ作っている人は、皆たいてい「自分用フレームワーク」を持ってると
思うし、この手の共通フレームワークに移行できたら楽かなと思うんだろうけど、
いざ移行するとなると、こいつとなら心中しても悔いなしという決心が要るよなあ。
0554nobodyさん
04/03/15 08:53ID:???J2EE をお手本にしたアプリケーションサーバ( + フレームワーク)。
0555nobodyさん
04/03/15 09:34ID:???EOF って、Enterprise Object Frameworks っていうやつなのかな?
ググってみたけど、あんまり分かりやすく説明しているところが無かったな。
誰か簡単に説明してくれ。もしくは、良いページを紹介してくれ。
0556nobodyさん
04/03/19 14:28ID:???結局作者しか使えないフレームワークになりそう。(数年後にははっきりすると思うけど)
rwikiの実装見ると、drubyでさらっと作ってる印象。
実はこれが正しいエンタープライズなシステムの作り方だと思うよ。
0558nobodyさん
04/03/20 12:47ID:???いちいち手で書くのが好きならいいんだけど、車輪の再発明だもんなあ。
0559nobodyさん
04/03/21 01:38ID:???るびきちさんの言動
0561nobodyさん
04/03/21 14:01ID:???0562nobodyさん
04/03/22 13:17ID:???漏れはウェブシステムのインターフェースとしては一番意味があるフレームワークだと思うんだけど。
(他のフレームワークは申し訳ないけど、手間かかるだけであまり意味がない)
0563nobodyさん
04/03/22 14:35ID:???ドキュメント (チュートリアル的なもの) が見当たんないので手が出せないでいます。
0564nobodyさん
04/03/22 15:20ID:???意味がある、ないを具体的にお願いします。
煽りじゃないよ。何を求めるかによってフレームワークにも合う合わないがあるからさ。
0566nobodyさん
04/03/23 15:16ID:h4hJAwq6rubyでcgiを勉強するのにおすすめの本ってありますか?
今のところ候補としては
・Ruby de CGI オーム社 堀川 久
・RubyによるCGIプログラミング SCC books 三並 慶佐
です。
0567nobodyさん
04/03/23 16:53ID:???どっちも薦めん。tDiary とか読め。
それか、オライリーのCGI本、もしくは Rubyアプリケーション何とか、とか。
それよりも、大学ではどんな風にRubyを教えてるのか、それを教えてくれ。
0568nobodyさん
04/03/23 19:31ID:???0569nobodyさん
04/03/24 04:59ID:???Tofuは使ったことがありますが、RWikiでの説明などで大体わかりました。
Divについては実際に使われているもののソースを読むのはいかがでしょうか。
たとえばdivipとか。
divip - Div IP Messenger
http://divip.sourceforge.jp/
で、divipのMLを読んだらUNIX USERのバックナンバーに
Divの解説記事があるとのこと。
[divip-list:7] UNIX USER2003-09
http://lists.sourceforge.jp/mailman/archives/divip-list/2003-August/000006.html
0570nobodyさん
04/03/24 20:00ID:???dRuby 本は積ん読になってました。読まんと。
divip と UNIX USER もチェックしてみます。
あと、ついでといってはなんですが、
Webrick のドキュメント (チュートリアル的なもの) で良さそうなのありますか?
webrick.org にいくつか使用例がありますが、
フォーム (HTTP POST) を使う例が無いのでそこらへんからつまずいてます。
0572nobodyさん
04/03/29 09:30ID:3mAZfbN2ちょっと勉強してみようと思うんだけど、お薦めの本とかあります?
拙者はC言語が分かる程度です。
0573nobodyさん
04/03/29 14:03ID:JHAif1f9たのしいRuby
0574nobodyさん
04/03/30 02:15ID:???Rubyのソースにある sample/webrick/demo-app.rb とか。
GETとPOSTのサンプルだと思います。
0575nobodyさん
04/03/30 02:40ID:???おおお!ありがとうございます。私の目は節穴でした。
言い訳ですが、FreeBSD の ports で入れると、
こういう Ruby 標準添付になった物のサンプルやドキュメントが
ごっそり無くなってる (インストールされない) んですよね。
まだ標準添付にならずに独立してた頃の方が、
そのへんがインストールされる分、良かった。
0576nobodyさん
04/03/30 03:09ID:???sample/webrick以下のファイルは、1.8.1リリース後に[ruby-list:39029]が
きっかけとなって追加されたみたいです。
http://rrr.jin.gr.jp/rwiki?cmd=view;name=ruby-cvs-2004-01-07#a21.3a22.3a19
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/39029
今後portsのrubyが更新されればこの辺のファイルもインストールされる、
と思います。多分。
0578nobodyさん
04/04/11 02:08ID:???perl CGI同様格好のセキュリティホール(攻撃対象)になりそうな予感。
0579nobodyさん
04/04/11 02:33ID:???“perlのCGI並に「動けば正義」みたいだなあ。”
という意味かな?
言語は何を使っても、きちんとプログラムを作らなければ
穴が出来るのは同じだと思うのですが。
0580nobodyさん
04/04/11 03:58ID:???なんとなく人と違うことをしたがるけどほぼ同じ事やってるプチあまのじゃくな人が好む言語ですか?
それならperlでいいじゃないかと正直思う。
0581nobodyさん
04/04/11 04:22ID:???0582nobodyさん
04/04/11 04:56ID:???穴が出来るかどうかと、出来やすいかどうかとは違う話です。
rubyの方が出来にくいと私自身は感じますが、rubyに親しんで無い人が作れば簡単に穴は出来ます。
それはどの言語でも一緒でしょ。
っていうか、そう思うなら自分で「CGIで穴bェ出来にくい」血セ語を作れよ。
どれだけ実用性とバランスが取れた言語が出来るか、見ものだな。
0583nobodyさん
04/04/11 19:08ID:???メリットないならrubyでCGIやる必要ないし。
0584nobodyさん
04/04/11 20:36ID:???0585nobodyさん
04/04/11 21:58ID:???0586nobodyさん
04/04/11 23:04ID:???0587nobodyさん
04/04/12 01:50ID:???ポイントにエサ垂らしてみて食いついてきたらキターって感じ。
デバックしてるときのブレークポイントでうまく捕まえられたときの嬉しさに通じるところがある。
最近は魚も賢くなってあきらかにエサ垂らしても食いついてこないので戦略的に釣りをするところが楽しい。
0588nobodyさん
04/04/12 05:59ID:???Perl使い続ける人は偉いと思うですよ。
Perl使う人は、仕事人という感じがしてる。
歴史が長いから、ユーザが多いからという理由だけてであれを使いつづけられるのは凄い。
コードに好き嫌いは無いというか、いい仕事をする、いいコードを書くというエゴから解放されていると思う。
Ruby使う人は激しく怠け者。
0589nobodyさん
04/04/13 22:38ID:???農作業なんかも得意だと思うね。
0590nobodyさん
04/04/20 15:47ID:Ea+/kdHDで書かれている内容はWindows+Cygwinの環境で試すことができますか?
0591nobodyさん
04/04/20 23:30ID:???Cygwin 上の DB がパフォーマンス悪いくらいのもので。
0592nobodyさん
04/04/21 01:08ID:???0593nobodyさん
04/04/21 09:39ID:???cygwinの方が私には良さそうです。
ttp://pcweb.mycom.co.jp/special/2004/sfu/
0594nobodyさん
04/05/06 00:28ID:wtWitys7この構文で warning: escaped terminator '"' inside string interpolation
と、エラーがでるんですが、原因はなんですか?
0595nobodyさん
04/05/07 22:30ID:OJ0mxpcsわしは、 TapKit に期待してます。
http://www.spice-of-life.net/tapkit/index_ja.html
0596nobodyさん
04/05/08 01:50ID:???お使いのRubyが1.8.0以降でしたら、以下のページの記述が当てはまるかも。
ttp://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=changes.1.8.0.ja
以下引用。適当に改行してます。
文字列の式展開 (expression interpolation in strings)
Now arbitrary statements are allowed inside #{} interpolation without escapes.
In other hand, they can no longer access to variables defined in eval.
#{} の中で、任意の文がエスケープなしで記述できるようになりました。
一方、evalの中で定義された変数にはアクセスできないようになりました。
0597nobodyさん
04/05/08 13:41ID:???PerlとJavaを比べたらPerlのほうがいいと思うよ。しかし、PerlとRubyでは、漏れの場合はRubyのほうがいい。
0598nobodyさん
04/05/13 14:13ID:???ここに色々なtemplateが紹介されてますけど、
皆さんはどれを使ってますか?
使った感想やお勧めがあったら教えてください。
出来れば理由も。
私はtempuraを使って見ようかなと思ってます。
理由は
http://www.imasy.or.jp/~hisa/tempura/tempura.ja.html
を読んで納得が出来たので。
0599nobodyさん
04/05/14 16:45ID:???0600nobodyさん
04/05/14 17:07ID:???0602nobodyさん
04/05/20 12:28ID:NShBOzWM@Perlでは別インストールで多くの人が知らないデーターベース利用を標準で使用できるようにし、「データーベースが簡単に取り扱える」というイメージを特に強く植えつけた。
Aウェブサイト作成への特化。例えば、セッション管理がそうだ。
Bソースの隠蔽による著作権保護を可能にした。
データーベースを使いたいが、使い方がわからない。そこに、PHPなら使えるという情報が先に入る。これで、PHPに入った人もかなり多いはず。
PHPの言語仕様はZendに大きく左右される。
二年ほど前、PHPが出始めた頃には、変数のスコープがPerlとまったく同じ仕様だった。
もともと、Perlのソースコードを改編して作成されたPHP。
↓PHPの歴史
http://php.planetmirror.com/manual/ja/history.php
PHPには、Perlコードの退行による高速化の意図が言語のいたるところに見える。
マイクロソフトは、オブジェクト指向への対応というのが大義にVB6.0からVB.NETに言語仕様を大幅に変えた。
今後も大きく言語仕様が変わることはないのか?
オープンソースとは言っても、Zend社の
http://www.zend.com/management.php
の数人のスタップによって大きく左右される。
再帰的定義とされる「PHP:Hypertext Preprocessor」という名前にも理由がある。これは、要するに、正確には、「Perl Hypertext Preprocessor」としたいところだが、GNUの「GNU is Not UNIX」という再帰的な定義をもじったものだ。
要するに、「GPLのフリーソフトのライセンスには違反していませんよ!」と一つには主張し、また、一つには、「PHP is Not Perl」とでも言って、Zendの社としての姿勢を、先人の「Perl開発者たち」から擁護する意図があったのだろう。
Nではなく、Hなのが、そのための味噌だ!Perl開発者たちは、当然、面白くないはずだ。
PHP信奉者は、六芒星(hexagram)マークのユダヤ教にでも、入信せよ!
0603nobodyさん
04/05/20 16:28ID:cgjPprlDマルチぼけがぁああああああああああああ!!
0604nobodyさん
04/05/23 23:41ID:???def con(str1, str2)
str1+str2
end
普通のRubyだと、
puts con(con("h","o"),"ge") #=>"hoge"
とメソッド内の引数にメソッドを書いてもOKですが、
hikiで{{con(con("h","o"),"ge")}}を書くと、
Hiki::PluginException(wrong number of arguments(3 for 2)): con
が出ます。
0605nobodyさん
04/05/24 01:05ID:???Hikiのプラグインの引数は単に「,」で適当にちぎって
渡すだけで式として評価されるわけではない。ただし
数っぽく見えるものは数に変換したり、"..."や'...'
は外側の「"」「'」をはぎとったりはしてくれたかな。
0607nobodyさん
04/05/24 08:42ID:???うかつに用意するとセキュリティホールになりそうだが。
0608nobodyさん
04/05/24 08:55ID:???0609nobodyさん
04/05/24 15:45ID:Nhm51QmvRuby本体はruby-1.8.1-i386-mswin32.zipを利用しています。
0610nobodyさん
04/05/30 15:58ID:???【オフィシャル】Rubyはこのまま消えていく言語にノミネートされました 【サイト消滅】
http://pc5.2ch.net/test/read.cgi/prog/1085829204/
0611nobodyさん
04/06/28 21:24ID:???0612nobodyさん
04/06/28 21:39ID:???0613nobodyさん
04/07/05 05:17ID:???0614nobodyさん
04/07/05 07:05ID:8NRD/g5jほんとだよ。だれか知らないか。
0615nobodyさん
04/07/25 10:20ID:lhtgOqn2http://www.ruby-talk.org/cgi-bin/scat.rb/ruby/ruby-talk/104977
> he is working on restoring the web pages.
ってあるからそのうち復活するんじゃないすかね、きっと。
0616nobodyさん
04/09/06 20:32ID:yBVAikae0617nobodyさん
04/10/08 03:24:16ID:???Ruby人口って激減してるの?
0618nobodyさん
04/10/08 11:01:15ID:???CGIならPerl、というのが結局定着してるし。
0619nobodyさん
04/10/12 14:03:12ID:???0620nobodyさん
04/10/12 20:39:31ID:???■ このスレッドは過去ログ倉庫に格納されています