J'ai décidé de me lancer dans l'aventure de faire tourner un site Ruby on Rails sur mon hébergement mutualisé gp60 chez OVH. Enfin ce n'est pas vraiment une aventure puisque c'est les Guides OVH qui m'ont guidés dans cette affaire.

Pour ceux qui ne connaissent pas, Ruby on Rails est un excellent framework de développement d'applications Web. Je pense que tout développeur d'applications internet et de sites internet se doit de jeter un coup d'œil à cette merveille.

Bref, seulement voilà j'ai eu quelques petits soucis à l'installation donc je tiens à retracer mes étapes ici. J'espère qu'elles vous guideront vers le même succès que moi.

  • Tout d'abord j'ai créé un sous-domaine dans mon administration OVH. Je trouve ça plus propre que d'avoir un sous-répertoire dans www comme le suggère le guide. En plus mon sous-domaine pointe vers /monapplication/public/ ce qui protège les autres fichiers (/monapplication n'est pas directement accessible par le web, et ce sans avoir besoin de .htaccess).
  • J'ai ensuite copié le contenu de mon application dans /monapplication.
  • J'ai ensuite adapté mon fichier database.yml (et bien sûr j'ai importé mes données dans la base MySQL de mon compte).
  • Je pensais que cela suffirait mais tristement j'ai obtenu une erreur 500 :
Rails application failed to start properly

Pour corriger le problème j'ai simplement modifié mon dispatch.cgi pour que #!/usr/local/bin/ruby soit la première ligne.

  • Si vous avez toujours erreur 500,
Rails application failed to start properly

rendez-vous sur ce site en anglais qui vous donnera sûrement d'autres idées.

  • Après ces manipulations le site fonctionnait à peu près, mais je n'avais pas les feuilles de style, les images et tout le tintouin. C'est en fait que tous les liens relatifs étaient faux. J'ai résolu le problème en forçant la valeur de RAILS_RELATIVE_URL_ROOT avec la ligne suivante, ajoutée tout en bas de config/environment.rb :
ENV['RAILS_RELATIVE_URL_ROOT'] = ""
  • Enfin, j'ai forcé l'utilisation de l'environnement de production en enlevant le commentaire devant la ligne :
ENV['RAILS_ENV'] = 'production'

dans les premières lignes du fichier config/environment.rb.

Voilà, merci à OVH car après quelques gouttes de sueur, j'ai une application Ruby On Rails qui tourne à merveille sur mon serveur. On peut lui reprocher certaines lenteurs (à cause de CGI) mais ce n'est pas vraiment un problème pour une petite application perso.

J'espère que ce petit tutoriel vous aura aidé. Bon courage !