Set canonical_url domain in settings

This commit is contained in:
Nyymix 2025-07-30 13:57:39 +03:00
parent 4a282ba7a8
commit 00d8a792d0
2 changed files with 20 additions and 0 deletions

View file

@ -32,6 +32,9 @@ LOCALE_PATHS = [
BASE_DIR / 'locale', BASE_DIR / 'locale',
] ]
# Hostname for canonical_url
CANONICAL_HOST = "nyymix.net"
# Application definition # Application definition
INSTALLED_APPS = [ INSTALLED_APPS = [
@ -76,6 +79,7 @@ TEMPLATES = [
'django.template.context_processors.request', 'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth', 'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages', 'django.contrib.messages.context_processors.messages',
'gallery.context_processors.canonical_url_processor',
], ],
}, },
}, },

View file

@ -0,0 +1,16 @@
from django.conf import settings
def canonical_url_processor(request):
if settings.DEBUG:
canonical_url = request.build_absolute_uri()
else:
current_host = request.get_host()
canonical_host = settings.CANONICAL_HOST
if current_host != canonical_host:
canonical_url = f"{request.scheme}://{canonical_host}{request.get_full_path()}"
else:
canonical_url = request.build_absolute_uri()
return {'canonical_url': canonical_url}