(2013, 'Lost connection to MySQL server during query')
Request Method: | GET |
---|---|
Request URL: | https://mx.class.posot.com/celular-lg-zone-plata-camara-de-13-mpx-memoria/ |
Django Version: | 3.1.5 |
Exception Type: | OperationalError |
Exception Value: | (2013, 'Lost connection to MySQL server during query') |
Exception Location: | /home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/connections.py, line 259, in query |
Python Executable: | /home/web/env/pro/bin/uwsgi |
Python Version: | 3.6.8 |
Python Path: | ['/home/web/pro/class_es_mx/', '.', '', '/usr/lib64/python36.zip', '/usr/lib64/python3.6', '/usr/lib64/python3.6/lib-dynload', '/home/web/env/pro/lib64/python3.6/site-packages', '/home/web/env/pro/lib/python3.6/site-packages'] |
Server time: | Fri, 29 Mar 2024 08:43:20 -0600 |
/home/web/pro/class_es_mx/offer/views.py
, line 331, in search
if top_searches_dict[settings.LOCALE]:
try:
#print("SEARCH_TERM",search_term)
st = re.sub("-+","-",search_term)
st = st.replace("-"," ")
#print("ST",st)
ts_ent = TopSearches.objects.get(tag = st)…
if search_term != slugify_plus(ts_ent.tag):
return HttpResponsePermanentRedirect("/{0}-{1}/".format(settings.URL_COMPLETION, slugify_plus(ts_ent.tag)))
except Exception as e:
st = search_term.replace("-"," ")
st = st.replace('"',"")
print("No existe la TS en topsearches: ",e)
Variable | Value |
---|---|
page | 1 |
q | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
request | <WSGIRequest: GET '/celular-lg-zone-plata-camara-de-13-mpx-memoria/'> |
search_term | 'celular-lg-zone-plata-camara-de-13-mpx-memoria' |
st | 'celular lg zone plata camara de 13 mpx memoria' |
/home/web/env/pro/lib/python3.6/site-packages/django/db/models/manager.py
, line 85, in manager_method
def check(self, **kwargs):
return []
@classmethod
def _get_queryset_methods(cls, queryset_class):
def create_method(name, method):
def manager_method(self, *args, **kwargs):
return getattr(self.get_queryset(), name)(*args, **kwargs)…
manager_method.__name__ = method.__name__
manager_method.__doc__ = method.__doc__
return manager_method
new_methods = {}
for name, method in inspect.getmembers(queryset_class, predicate=inspect.isfunction):
Variable | Value |
---|---|
args | () |
kwargs | {'tag': 'celular lg zone plata camara de 13 mpx memoria'} |
name | 'get' |
self | <django.db.models.manager.Manager object at 0x7f528c20c080> |
/home/web/env/pro/lib/python3.6/site-packages/django/db/models/query.py
, line 431, in get
clone.query.set_limits(high=limit)
num = len(clone)
if num == 1:
return clone._result_cache[0]
if not num:
raise self.model.DoesNotExist(
"%s matching query does not exist." %
self.model._meta.object_name…
)
raise self.model.MultipleObjectsReturned(
'get() returned more than one %s -- it returned %s!' % (
self.model._meta.object_name,
num if not limit or num < limit else 'more than %s' % (limit - 1),
)
Variable | Value |
---|---|
args | () |
clone | <QuerySet []> |
kwargs | {'tag': 'celular lg zone plata camara de 13 mpx memoria'} |
limit | 21 |
num | 0 |
self | Error in formatting: OperationalError: (2006, 'MySQL server has gone away') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/utils.py
, line 84, in _execute
def _execute(self, sql, params, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
if params is None:
# params default might be backend specific.
return self.cursor.execute(sql)
else:
return self.cursor.execute(sql, params)…
def _executemany(self, sql, param_list, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
return self.cursor.executemany(sql, param_list)
Variable | Value |
---|---|
ignored_wrapper_args | (False, {'connection': <django.db.backends.mysql.base.DatabaseWrapper object at 0x7f528f4b9fd0>, 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0>}) |
params | () |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
sql | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/mysql/base.py
, line 73, in execute
def __init__(self, cursor):
self.cursor = cursor
def execute(self, query, args=None):
try:
# args is None means no string interpolation
return self.cursor.execute(query, args)…
except Database.OperationalError as e:
# Map some error codes to IntegrityError, since they seem to be
# misclassified and Django would prefer the more logical place.
if e.args[0] in self.codes_for_integrityerror:
raise IntegrityError(*tuple(e.args))
raise
Variable | Value |
---|---|
args | () |
query | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
self | <django.db.backends.mysql.base.CursorWrapper object at 0x7f528c26d5c0> |
/home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/cursors.py
, line 206, in execute
args = tuple(map(db.literal, args))
try:
query = query % args
except TypeError as m:
raise ProgrammingError(str(m))
assert isinstance(query, (bytes, bytearray))
res = self._query(query)…
return res
def executemany(self, query, args):
# type: (str, list) -> int
"""Execute a multi-row query.
Variable | Value |
---|---|
args | () |
db | <_mysql.connection open to 'localhost' at 0xf61b38> |
query | (b'SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara d' b'e 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara de' b' 13 mpx memoria") LIMIT 1') |
self | <MySQLdb.cursors.Cursor object at 0x7f528c26d908> |
/home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/cursors.py
, line 319, in _query
)
self._query(q)
return args
def _query(self, q):
db = self._get_db()
self._result = None
db.query(q)…
self._do_get_result(db)
self._post_get_result()
self._executed = q
return self.rowcount
def _fetch_row(self, size=1):
Variable | Value |
---|---|
db | <_mysql.connection open to 'localhost' at 0xf61b38> |
q | (b'SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara d' b'e 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara de' b' 13 mpx memoria") LIMIT 1') |
self | <MySQLdb.cursors.Cursor object at 0x7f528c26d908> |
/home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/connections.py
, line 259, in query
"""
return (cursorclass or self.cursorclass)(self)
def query(self, query):
# Since _mysql releases GIL while querying, we need immutable buffer.
if isinstance(query, bytearray):
query = bytes(query)
_mysql.connection.query(self, query)…
def _bytes_literal(self, bs):
assert isinstance(bs, (bytes, bytearray))
x = self.string_literal(bs) # x is escaped and quoted bytes
if self._binary_prefix:
return b"_binary" + x
Variable | Value |
---|---|
query | (b'SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara d' b'e 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara de' b' 13 mpx memoria") LIMIT 1') |
self | <_mysql.connection open to 'localhost' at 0xf61b38> |
/home/web/env/pro/lib/python3.6/site-packages/django/core/handlers/exception.py
, line 47, in inner
response = await sync_to_async(response_for_exception, thread_sensitive=False)(request, exc)
return response
return inner
else:
@wraps(get_response)
def inner(request):
try:
response = get_response(request)…
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | OperationalError(2013, 'Lost connection to MySQL server during query') |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f528e06e128>> |
request | <WSGIRequest: GET '/celular-lg-zone-plata-camara-de-13-mpx-memoria/'> |
/home/web/env/pro/lib/python3.6/site-packages/django/core/handlers/base.py
, line 181, in _get_response
if response is None:
wrapped_callback = self.make_view_atomic(callback)
# If it is an asynchronous view, run it in a subthread.
if asyncio.iscoroutinefunction(wrapped_callback):
wrapped_callback = async_to_sync(wrapped_callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
if response is None:
raise
# Complain if the view returned None (a common error).
Variable | Value |
---|---|
callback | <function search at 0x7f528c22e6a8> |
callback_args | () |
callback_kwargs | {'search_term': 'celular-lg-zone-plata-camara-de-13-mpx-memoria'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f528c2c4f28>> |
request | <WSGIRequest: GET '/celular-lg-zone-plata-camara-de-13-mpx-memoria/'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f528e06e128> |
wrapped_callback | <function search at 0x7f528c22e6a8> |
/home/web/pro/class_es_mx/offer/views.py
, line 340, in search
return HttpResponsePermanentRedirect("/{0}-{1}/".format(settings.URL_COMPLETION, slugify_plus(ts_ent.tag)))
except Exception as e:
st = search_term.replace("-"," ")
st = st.replace('"',"")
print("No existe la TS en topsearches: ",e)
#ts_relevance = search_topsearches(settings.LOCALE,search_term,category="",limit=2)
q = u'''SELECT * FROM offer_topsearches WHERE tag != "{0}" AND MATCH (tag) AGAINST ("{0}") LIMIT 1'''.format(st)
ts_relevance = mysql_custom_query(q)…
for ts in ts_relevance:
#print("TSTAG",ts['tag'])
#print("SEARCH_TERM",search_term)
#print("ST",st)
#print("spts",slugify_plus(ts['tag']))
Variable | Value |
---|---|
page | 1 |
q | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
request | <WSGIRequest: GET '/celular-lg-zone-plata-camara-de-13-mpx-memoria/'> |
search_term | 'celular-lg-zone-plata-camara-de-13-mpx-memoria' |
st | 'celular lg zone plata camara de 13 mpx memoria' |
/home/web/pro/class_es_mx/offer/views.py
, line 236, in mysql_custom_query
def mysql_custom_query(q, params=()):
from django.db import connection
"""
Executes a custom query and returns the result as a dictionary
"""
cursor = connection.cursor()
cursor.execute(q, params)…
desc = cursor.description
return [dict(zip([col[0] for col in desc], row)) for row in cursor.fetchall()]
def index(request):
if request.method == 'POST':
search_form = SearchForm(request.POST)
Variable | Value |
---|---|
connection | <django.db.DefaultConnectionProxy object at 0x7f528f761d30> |
cursor | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
params | () |
q | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/utils.py
, line 98, in execute
class CursorDebugWrapper(CursorWrapper):
# XXX callproc isn't instrumented at this time.
def execute(self, sql, params=None):
with self.debug_sql(sql, params, use_last_executed_query=True):
return super().execute(sql, params)…
def executemany(self, sql, param_list):
with self.debug_sql(sql, param_list, many=True):
return super().executemany(sql, param_list)
@contextmanager
Variable | Value |
---|---|
__class__ | <class 'django.db.backends.utils.CursorDebugWrapper'> |
params | () |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
sql | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/utils.py
, line 66, in execute
elif kparams is None:
return self.cursor.callproc(procname, params)
else:
params = params or ()
return self.cursor.callproc(procname, params, kparams)
def execute(self, sql, params=None):
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)…
def executemany(self, sql, param_list):
return self._execute_with_wrappers(sql, param_list, many=True, executor=self._executemany)
def _execute_with_wrappers(self, sql, params, many, executor):
context = {'connection': self.db, 'cursor': self}
Variable | Value |
---|---|
params | () |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
sql | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/utils.py
, line 75, in _execute_with_wrappers
def executemany(self, sql, param_list):
return self._execute_with_wrappers(sql, param_list, many=True, executor=self._executemany)
def _execute_with_wrappers(self, sql, params, many, executor):
context = {'connection': self.db, 'cursor': self}
for wrapper in reversed(self.db.execute_wrappers):
executor = functools.partial(wrapper, executor)
return executor(sql, params, many, context)…
def _execute(self, sql, params, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
if params is None:
# params default might be backend specific.
Variable | Value |
---|---|
context | {'connection': <django.db.backends.mysql.base.DatabaseWrapper object at 0x7f528f4b9fd0>, 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0>} |
executor | <bound method CursorWrapper._execute of <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0>> |
many | False |
params | () |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
sql | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/utils.py
, line 84, in _execute
def _execute(self, sql, params, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
if params is None:
# params default might be backend specific.
return self.cursor.execute(sql)
else:
return self.cursor.execute(sql, params)…
def _executemany(self, sql, param_list, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
return self.cursor.executemany(sql, param_list)
Variable | Value |
---|---|
ignored_wrapper_args | (False, {'connection': <django.db.backends.mysql.base.DatabaseWrapper object at 0x7f528f4b9fd0>, 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0>}) |
params | () |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
sql | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/utils.py
, line 90, in __exit__
db_exc_type = getattr(self.wrapper.Database, dj_exc_type.__name__)
if issubclass(exc_type, db_exc_type):
dj_exc_value = dj_exc_type(*exc_value.args)
# Only set the 'errors_occurred' flag for errors that may make
# the connection unusable.
if dj_exc_type not in (DataError, IntegrityError):
self.wrapper.errors_occurred = True
raise dj_exc_value.with_traceback(traceback) from exc_value…
def __call__(self, func):
# Note that we are intentionally not using @wraps here for performance
# reasons. Refs #21109.
def inner(*args, **kwargs):
with self:
Variable | Value |
---|---|
db_exc_type | <class 'MySQLdb._exceptions.OperationalError'> |
dj_exc_type | <class 'django.db.utils.OperationalError'> |
dj_exc_value | OperationalError(2013, 'Lost connection to MySQL server during query') |
exc_type | <class 'MySQLdb._exceptions.OperationalError'> |
exc_value | OperationalError(2013, 'Lost connection to MySQL server during query') |
self | <django.db.utils.DatabaseErrorWrapper object at 0x7f528c0e2a20> |
traceback | <traceback object at 0x7f5278bea5c8> |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/utils.py
, line 84, in _execute
def _execute(self, sql, params, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
if params is None:
# params default might be backend specific.
return self.cursor.execute(sql)
else:
return self.cursor.execute(sql, params)…
def _executemany(self, sql, param_list, *ignored_wrapper_args):
self.db.validate_no_broken_transaction()
with self.db.wrap_database_errors:
return self.cursor.executemany(sql, param_list)
Variable | Value |
---|---|
ignored_wrapper_args | (False, {'connection': <django.db.backends.mysql.base.DatabaseWrapper object at 0x7f528f4b9fd0>, 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0>}) |
params | () |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7f528c26def0> |
sql | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
/home/web/env/pro/lib/python3.6/site-packages/django/db/backends/mysql/base.py
, line 73, in execute
def __init__(self, cursor):
self.cursor = cursor
def execute(self, query, args=None):
try:
# args is None means no string interpolation
return self.cursor.execute(query, args)…
except Database.OperationalError as e:
# Map some error codes to IntegrityError, since they seem to be
# misclassified and Django would prefer the more logical place.
if e.args[0] in self.codes_for_integrityerror:
raise IntegrityError(*tuple(e.args))
raise
Variable | Value |
---|---|
args | () |
query | ('SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara ' 'de 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara ' 'de 13 mpx memoria") LIMIT 1') |
self | <django.db.backends.mysql.base.CursorWrapper object at 0x7f528c26d5c0> |
/home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/cursors.py
, line 206, in execute
args = tuple(map(db.literal, args))
try:
query = query % args
except TypeError as m:
raise ProgrammingError(str(m))
assert isinstance(query, (bytes, bytearray))
res = self._query(query)…
return res
def executemany(self, query, args):
# type: (str, list) -> int
"""Execute a multi-row query.
Variable | Value |
---|---|
args | () |
db | <_mysql.connection open to 'localhost' at 0xf61b38> |
query | (b'SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara d' b'e 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara de' b' 13 mpx memoria") LIMIT 1') |
self | <MySQLdb.cursors.Cursor object at 0x7f528c26d908> |
/home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/cursors.py
, line 319, in _query
)
self._query(q)
return args
def _query(self, q):
db = self._get_db()
self._result = None
db.query(q)…
self._do_get_result(db)
self._post_get_result()
self._executed = q
return self.rowcount
def _fetch_row(self, size=1):
Variable | Value |
---|---|
db | <_mysql.connection open to 'localhost' at 0xf61b38> |
q | (b'SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara d' b'e 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara de' b' 13 mpx memoria") LIMIT 1') |
self | <MySQLdb.cursors.Cursor object at 0x7f528c26d908> |
/home/web/env/pro/lib64/python3.6/site-packages/MySQLdb/connections.py
, line 259, in query
"""
return (cursorclass or self.cursorclass)(self)
def query(self, query):
# Since _mysql releases GIL while querying, we need immutable buffer.
if isinstance(query, bytearray):
query = bytes(query)
_mysql.connection.query(self, query)…
def _bytes_literal(self, bs):
assert isinstance(bs, (bytes, bytearray))
x = self.string_literal(bs) # x is escaped and quoted bytes
if self._binary_prefix:
return b"_binary" + x
Variable | Value |
---|---|
query | (b'SELECT * FROM offer_topsearches WHERE tag != "celular lg zone plata camara d' b'e 13 mpx memoria" AND MATCH (tag) AGAINST ("celular lg zone plata camara de' b' 13 mpx memoria") LIMIT 1') |
self | <_mysql.connection open to 'localhost' at 0xf61b38> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
DOCUMENT_ROOT | '/usr/share/nginx/html' |
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'mx.class.posot.com' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/celular-lg-zone-plata-camara-de-13-mpx-memoria/' |
QUERY_STRING | '' |
REMOTE_ADDR | '54.88.179.12' |
REMOTE_PORT | '41148' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'https' |
REQUEST_URI | '/celular-lg-zone-plata-camara-de-13-mpx-memoria/' |
SCRIPT_NAME | '' |
SERVER_NAME | 'mx.class.posot.com' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.1' |
uwsgi.node | b'ns3182997' |
uwsgi.version | b'2.0.1' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | <built-in function uwsgi_sendfile> |
wsgi.input | <uwsgi._Input object at 0x7f528b63c438> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
classi.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | () |
ALLOWED_HOSTS | ['mx.class.posot.com'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | '/home/web/pro/class_es_mx' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.mysql', 'HOST': '', 'NAME': 'class_es_mx', 'OPTIONS': {'charset': 'utf8mb4', 'init_command': 'SET default_storage_engine=MYISAM'}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'admin'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
DEFAULT_HASHING_ALGORITHM | 'sha256' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'offer') |
INTERNAL_IPS | [] |
LANGUAGES | (('es-mx', ''),) |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'fa', 'ur'] |
LANGUAGE_CODE | 'es-mx' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE | 'es_mx' |
LOCALE_PATHS | [] |
LOGGING | {'disable_existing_loggers': False, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}}, 'formatters': {'simple': {'format': '%(levelname)s %(message)s'}, 'verbose': {'format': '%(asctime)s %(module)s %(funcName)s ' '%(message)s'}}, 'handlers': {'console': {'class': 'logging.StreamHandler', 'formatter': 'verbose', 'level': 'DEBUG'}, 'mail_admins': {'class': 'django.utils.log.AdminEmailHandler', 'filters': ['require_debug_false'], 'level': 'ERROR'}}, 'loggers': {'django.request': {'handlers': ['console'], 'level': 'ERROR', 'propagate': True}}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGO | '/static/img/logo_es.png' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | () |
MEDIA_ROOT | '/datos/class/pics/es_mx/' |
MEDIA_URL | 'https://img.mx.class.posot.com/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
ROOT_URLCONF | 'classi.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'classi.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 1 |
STATICFILES_DIRS | () |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/home/web/pro/class_es_mx/static/' |
STATIC_URL | 'https://mx.class.posot.com/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/home/web/pro/class_es_mx/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'offer.context.common_data']}}] |
TEMPLATE_DEBUG | True |
TEMPLATE_LOADERS | ('django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader') |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'America/Mexico_City' |
URL_COMPLETION | '' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'classi.wsgi.application' |
X_FRAME_OPTIONS | 'DENY' |
YEAR_MONTH_FORMAT | 'F Y' |
You're seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.