This would work, assuming the file had a Ruby extension, and assuming
Apache
was configured to execute Ruby CGI scripts.
I have a fresh install of ubuntu, almost no experience with apache, cgi,
or ruby, but a lot of patience.
I haven’t modified my apache2 config, I haven’t installed any extra
apache-ruby modules.
If you go to http://atraeyu.org/ you’ll notice a ruby.htm file.
Obviously this won’t execute. I’m wondering what I need to do to make it
execute.
First, as long as it has that extension, Apache will interpret it as an
HTML
file, not a Ruby file. You need to submit your Ruby CGI scripts to
Apache
in such a way that Apache understands what they are.
Do I need to install to install an apache module? Can I simply change
the extension and set it to executable?
I imagine there are a few simple concepts I really don’t understand that
I need to.
The problem you face is not to write a Ruby CGI script (for which
examples
abound), it is to get Apache to execute it. I would go on, but this
isn’t
about Ruby, it’s about Apache configuration.
I have a fresh install of ubuntu, almost no experience with apache, cgi,
or ruby, but a lot of patience.
I haven’t modified my apache2 config, I haven’t installed any extra
apache-ruby modules.
If you go to http://atraeyu.org/ you’ll notice a ruby.htm file.
Obviously this won’t execute. I’m wondering what I need to do to make it
execute.
Do I need to install to install an apache module? Can I simply change
the extension and set it to executable?
I imagine there are a few simple concepts I really don’t understand that
I need to.
I will really appreciate any help. Thanks.
You should rename the file to something *.rb (hello.rb) for example and
make it’s executable to apache. Set it’s owner to www-data, the user
account apache runs under with the command “chown www-data:www-data
hello.rb”. Then set it’s permissions so it can be run “chmod 700
hello.rb”.
Now you need to configure apache. Edit
“/etc/apache2/sites-available/default”. In the <Directory /var/www>
section add the following line…
AddHandler cgi-script .rb
In the options line make sure it includes +ExecCGI so it should look
something like this…
Options +FollowSymlinks +ExecCGI
Have apache reload the config…
sudo /etc/init.d/apache2 reload
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.