Magazine High tech

[Tuto] Fichier robot.txt et Ruby On Rails

Publié le 19 juin 2014 par P0k3
[Tuto] Fichier robot.txt et Ruby On Rails

Soyez sociable ! Partagez :

Nouvelle problématique combattu aujourd'hui ! Le fichier robot.txt et les environnements de Rub on Rails.

Si vous êtes adepte des bonnes pratiques, vous avez forcément plusieurs environnements pour votre application Ruby On Rails et vous souhaitez un robot.txt variant selon les environnements (par exemple, on veut que Google index la production, mais pas la version de développement).

Voici ce que j'ai mis en place cette après midi pour un des mes sites Web !

Un Robot.txt multi environnement

On va premièrement créer le controller.

J'ai personnellement utilisé le controller " Pages " que j'avais déjà, mais vous pouvez créer un controller dédié Robots qui répondra beaucoup mieux à la logique CRUD de l'application (CREATE, READ, UPDATE, DELETE).

class RobotsController < ApplicationController
  def show
      robots = File.read(Rails.root + "config/robots/#{Rails.env}.txt")
      render :text => robots, :layout => false, :content_type => "text/plain"
  end
end

Si vous lisez le rails couramment, vous comprendrez vite ce qu'il faut faire ensuite :

Dans le dossier /config/robots/, on va créer nos différents fichiers de configuration de robot selon l'environnement dans lequel on veut qu'ils apparaissent.

/robots/staging.txt
User-agent: *
Disallow: /

Ensuite, on va configurer notre fichier routes.rb, en y ajoutant cette ligne :

get '/robot.txt', to: "robots#show"

Et le tour est joué ! Visitez la page : / robot.txt, et vous aurez votre robot.txt qui dépendra de l'environnement !

N'hésitez pas à partager avec moi vos méthodes pour le robot.txt ! Ou simplement, si vous souhaitez discuter avec moi !

Soyez Sociable ! Partagez !

Retour à La Une de Logo Paperblog

A propos de l’auteur


P0k3 117 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossiers Paperblog

Magazines