Next Previous Contents

8. <3>: Ruby i Apache: mod_ruby

Ruby kan integreres i Apache-webserveren ved hjelp av mod_ruby. Vi går ikke inn på konfigurering og installering, men fokuserer på den praktiske bruken av mod_ruby.

mod_ruby kan brukes til så mangt, da det egentlig bare:

En vanlig bruk er å sette opp slik at Ruby CGI-skript kjøres i Ruby-fortolkeren som er inne i Apache-prosessen i stedet. I tillegg til at det går fortere, har man da også tilgang til deler av Apaches API.

  1| r = Apache.request # Hent den gjeldende forespørsel.
  2| gammel_innholdstype = r.content_type
  3| r.content_type = 'text/html'
  4| r.sync=true # Slå på synkron utskrift.
  5| 
  6| puts '<HTML><BODY>'
  7| puts '<H1>Grave litt rundt i mod_ruby APIen.</H1>'
  8| puts '<P>Gammel innholdstype: ' + gammel_innholdstype.to_s
  9| puts '<P>Server versjon: ' + Apache.server_version
 10| puts '<UL>'
 11| 
 12| sleep 3 # Bare for å vise at synkron utskrift er påslått.
 13| [ :filename,     :protocol,     :request_method, 
 14|   :request_time, :server_name,  :server_port, 
 15|   :status,       :uri,
 16| ].each do |symbol|
 17|   print '<LI>', symbol.to_s, ' = ', r.send(symbol), '</LI>'
 18| end
 19| puts '</UL></BODY></HTML>'


Next Previous Contents