浦と申します。
まず、以下のeRubyスクリプトをご覧ください。これは、multipart/form-dataで
フォームの情報を受けるスクリプトです。
--- test.rhtml
#!/usr/local/bin/eruby
%require 'cgi'
%c = CGI.new
%s = (v = c['param'].first) ? v.read : 'nil'
<html>
<head><title>test</title></head>
<body>
<p><%= s %></p>
<form method=post action="test.rhtml" enctype="multipart/form-data">
<input type=text name="param">
<input type="submit">
</form>
</body>
</html>
---
さてこれを動かし、submitすると /tmp にゴミのファイルが残ってしまいます。
上記のものと同じことをする以下のCGIだと、ゴミは残りません。
--- test.cgi
#!/usr/local/bin/ruby
require 'cgi'
c = CGI.new
s = (v = c['param'].first) ? v.read : 'nil'
puts <<HTML
Content-Type: text/html
<html>
<head><title>test</title></head>
<body>
<p>#{s}</p>
<form method=post action="test.cgi" enctype="multipart/form-data">
<input type=text name="param">
<input type="submit">
</form>
</body>
</html>
HTML
---
FreeBSDとDebian GNU/Linuxの両方で同様に起き、必ず再現します。
使用しているバージョンは
tura@...:~$ eruby --version; uname -sr
eRuby version 0.9.6
ruby 1.6.4 (2001-08-16) [i686-linux]
Linux 2.2.19
及び
scipio:tura:~/project/spn/web$ eruby --version; uname -sr
eRuby version 0.9.6
ruby 1.6.4 (2001-08-16) [i386-freebsd4.3]
FreeBSD 4.3-RELEASE
です。以上、少しコードを追ってみたのですが追いきれなかったので ^^;
レポートします。
--
浦 岳史 (うら たけふみ) 【メイルアドレスをURL表記しよう運動】
mailto:hage@...