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.txtUser-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 !