mod_ruby/eruby tempfile.rb

f_x <[email protected]> Sun, 26 Jan 2003 21:08:40 +0100
Newsgroups gmane.comp.lang.ruby.german
Message-ID <[email protected]>
Hallo!

Ich versuche seit diesem Wochenende auf meinem Linux/Apache Server 
mod_ruby im eruby-Modus laufen zu lassen. Die Installation verlief ohne 
Probleme: Ruby 1.6.8 > eruby 1.02 > mod_ruby 1.04.

Nun habe ich das folgende Problem:
mod_ruby erzeugt temporäre Dateien mittels tempfile.rb. Diese werden in 
/tmp erzeugt, da tempfile.rb keine TMPDIR, TEMP oder TMP 
Umgebungsvariablen findet. Ich habe in der httpd.conf folgendes angegeben:

<IfModule mod_ruby.c>
   RubyRequire apache/eruby-run
   RubySafeLevel 1
   RubyOutputMode syncheader
   RubyTimeOut 90
   RubySetEnv TMPDIR "/media/www/tmp/mod_ruby"
   <Files *.rhtml>
   SetHandler ruby-object
   RubyHandler Apache::ERubyRun.instance
   </Files>
</IfModule>

In meiner test.rhtml Datei steht:

<%
      puts ENV['TMPDIR']
%>

Bei RubySafeLevel 1 erzeugt er im /tmp Verzeichnis die Tempdateien und 
zeigt das Ergebnis "/media/www/tmp/mod_ruby" an. Bei SafeLevel 2 bekomme 
ich einen Error 500 vom Webserver da er im /tmp keine Dateien erzeugen 
kann(Pfad ist tainted da worldwritable).

Wie bekomme ich mod_ruby dazu die TMPDIR Variable zu nutzen?

Vielen Dank schon im voraus.
Gruß f_x