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