: NTNU . PVV // Kent Dahl / Ruby / web_nuby / :oppgave
Praktisk

Hvor kan vi teste ut Ruby og webprogrammering?
Oppdatert versjon av Ruby er innstallert på taylor.pvv.ntnu.no med flere av de aktuelle bibliotekene, så som MySQL, dbi og druby.
Hvordan bruker vi det?
Vel innlogget på taylor (via f.eks. SSH) kan dere teste Ruby-programmene deres, samt legge dem opp på hjemmeområdet deres for testing. Legg filene under  ~/web-docs/cgi-bin/, gjør dem les- og kjørbare for alle og surf til sidene deres på
    http://taylor.pvv.ntnu.no/~brukernavn/cgi-bin/skriptnavn.rb[x|html]
Hvilken #!/path/til/ruby skal vi bruke?
Det er installert egen Ruby-fortolker på taylor da nåværende versjon i store ikke er helt frisk. Shebang-linjen blir da #!/usr/bin/ruby og ikke som vist i eksemplene. Dette har ingen betydning for kursdagen, da taylor foreløpig er satt opp til å kjøre .rb-filer i mod_ruby også. Derfor har shebang-linjen lite betydning på taylor, foreløpig. Derimot gjør det at .rb-filer kan ende opp med flere Content-type-hodelinjer.
Hvorfor printes Content-type: text/html ut i dokumentet mitt?
Når man kjører Ruby-skript som CGI-skript, må man angi innholdstypen selv. Dette gjør derimot mod_ruby for deg, så dersom du selv skriver den ut eksplisitt, vil den komme to ganger (og en av dem vil havne i teksten).

I mod_ruby settes content-type med Apache.request.content_type=

Sesjoner fungerer ikke?!
Dette testa vi dessverre ikke godt nok på forhånd. Alt kjøres via mod_ruby, og da er det to ting å huske på som er viktig. 1) lukk sesjonen og 2) pass på at det kommer en header ut som setter den identifiserende cookien: cgi.header; session.close Håper dette hjelper. (Se forøvrig mod_ruby sin FAQ Programming Ruby dokumentasjonen til CGI)
Jeg foretrekker Windows.
For å slippe å innstallere Ruby selv for å få testet ut kodesnutter, er det lagt opp en installasjon som kan brukes fra ruby.no. Map opp \\ruby.no\webnuby\ til stasjon R: med brukernavn webnuby og passord [...] (spør på datasalen) så skal det være mulig å kjøre Ruby-kode via både IRB (R:/program/ruby/bin/irb.exe) og SciTE-editoren (R:/program/ruby/scite/SciTE.exe). (Dobbeltklikking på .rb-filer vil ikke fungere.)