Comment ajouter un fichier robots.txt pour une App Django ?

Published: 14 décembre 2022

Tags: Django; Python;

DMCA.com Protection Status

Pour ajouter un fichier robots.txt pour un projet Django, plusieurs approches sont possibles. J'ai choisi d'utiliser une vue car il était plus pratique pour moi de gérer plusieurs sous-domaines :

Ajouter une nouvelle URL

Dans le fichier urls.py de votre application, ajoutez la ligne :

url(r'^robots\.txt$', views.robots_txt_view, name='robots_txt_view'),

Ajouter une nouvelle vue

Maintenant, créons une vue :

def robots_txt_view(request):
    content = '''User-Agent: *

Allow: /

Sitemap: https://www.example.com/sitemap.xml
        '''
    return HttpResponse(content, content_type='text/plain')

C'est un exemple minimal.

Remarque : pour vérifier si robots.txt est valide ou non, accédez à goole robots.txt Tester et copiez et collez la valeur de contenu ci-dessus. .

Par exemple

User-Agent: *

Allow: /

Sitemap: https://www.example.com/sitemap.xml

est un fichier robots.txt valide (renvoie 0 erreur).

Pour plus d'informations, consultez Créer un fichier robots.txt ou FAQ Robots.

Ajouter un fichier robots.txt avec des sous-domaines

Voir le tutoriel précédent Comment tester des sous-domaines en local avec django (sur Linux ou Mac) ?.

Modifiez ensuite la vue précédente pour travailler avec des sous-domaines en ajoutant les lignes suivantes :

  def robots_txt_view(request):
      full_url = request.build_absolute_uri()
      dn = full_url.split('/')[2]
      subdomain = dn.split('.')[0]
      content = '''User-Agent: *

  Sitemap: https://{}.example.com/sitemap.xml
          '''.format(subdomain)
      return HttpResponse(content, content_type='text/plain')