[GeoNode-devel] Layer Upload doesn't work in GeoNode 2.8.1rc0: "AttributeError at /layers/upload 'NoneType' object has no attribute 'charset'"

Michael Härtel haerta at haerta.de
Mon May 6 13:36:16 PDT 2019


Hello Alessio,

I installed mod_security and was able to produce more information by 
capturing the POST data. I attached the logfile to this mail.

Thank you very much,

Michael


On 06/05/2019 10:00, Alessio Fabiani wrote:
> Hello Michael,
> I'm going to do some checks on 2.8 branches and probably backport some 
> fixes in the next few days.
> I'll keep you posted about that.
>
> Alessio.
>
> Il giorno sab 4 mag 2019 alle ore 00:08 Michael Härtel 
> <haerta at haerta.de <mailto:haerta at haerta.de>> ha scritto:
>
>     Hello List,
>
>     I followed the instructions from here to install geonode:
>
>     http://docs.geonode.org/en/latest/tutorials/install_and_admin/geonode_install/install_geonode_application.html
>
>     Despite the fact that the url to Geonode from the tutorial
>     ("--template=https://github.com/GeoNode/geonode-project/archive/2.8.0.zip")
>     is not available and I had a hard time to find a URL that worked
>     for me (I used the ZIP from GIT/2.8.x branch), I eventuelly got
>     everything working apart from the layer upload.
>
>     I have no idea, how to debug this issue:
>
>       * The apache error.log does not show any entry.
>       * The apache access.log only shows an error 500
>       * The database doesn't show any relevant entry
>       * GeoServer doesn't show any relevant entry (Even with VERBODE
>         logging).
>
>     It seems that the file never reaches the server so the
>     "saved_layer" variable is empty/none/null (I am not a Python
>     programmer) in line 294 of
>     "/home/geo/Envs/geonode/src/geonode/geonode/layers/views.py"
>
>     Where is the relevant configuration?
>
>       * the directory and sub directories of
>         "/home/geonode/my_geonode/my_geonode/uploaded" has correct
>         permissions (even tested with "chmod -R ugo+rwx
>         /home/geonode/my_geonode/my_geonode/uploaded"
>       * the apache file /etc/apache2/sites-available/geonode.conf has
>         correct entries:
>         Alias /uploaded/ /home/geonode/my_geonode/my_geonode/uploaded/
>         <Directory "/home/geonode/my_geonode/my_geonode/uploaded/layers/">
>         ..."
>
>     Is there anyone who can tell me what else to check or how to debug
>     this issue?
>
>     When I select some shape files and click "upload files", the DEBUG
>     output on the web page looks like this:
>
>     AttributeError at /layers/upload 'NoneType' object has no
>     attribute 'charset' Request Method: POST Request URL:
>     http://geoportal.dummy.org/layers/upload Django Version: 1.8.19
>     Python Executable: /usr/bin/python Python Version: 2.7.12 Python
>     Path: ['/home/geonode/my_geonode',
>     '/home/geo/Envs/geonode/lib/python2.7/site-packages',
>     '/home/geo/Envs/geonode/src/geonode',
>     '/home/dummygeonode/my_geonode', '/usr/lib/python2.7',
>     '/usr/lib/python2.7/plat-x86_64-linux-gnu',
>     '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old',
>     '/usr/lib/python2.7/lib-dynload',
>     '/usr/local/lib/python2.7/dist-packages',
>     '/usr/lib/python2.7/dist-packages',
>     '/usr/lib/python2.7/dist-packages/PILcompat', '/var/www',
>     '/var/www'] Server time: Fri, 3 May 2019 21:36:06 +0000 Installed
>     Applications: ('modeltranslation', 'django.contrib.auth',
>     'django.contrib.contenttypes', 'django.contrib.sessions',
>     'django.contrib.sites', 'django.contrib.admin',
>     'django.contrib.sitemaps', 'django.contrib.staticfiles',
>     'django.contrib.messages', 'django.contrib.humanize',
>     'django.contrib.gis', 'dj_pagination', 'taggit', 'treebeard',
>     'geoexplorer', 'leaflet', 'bootstrap3_datetime',
>     'django_extensions', 'django_basic_auth', 'autocomplete_light',
>     'mptt', 'storages', 'floppyforms', 'pinax_theme_bootstrap',
>     'django_forms_bootstrap', 'avatar', 'dialogos', 'agon_ratings',
>     'announcements', 'actstream', 'user_messages', 'tastypie',
>     'polymorphic', 'guardian', 'oauth2_provider', 'corsheaders',
>     'invitations', 'allauth', 'allauth.account',
>     'allauth.socialaccount', 'rest_framework', 'geonode',
>     'geonode.api', 'geonode.base', 'geonode.layers', 'geonode.maps',
>     'geonode.documents', 'geonode.security', 'geonode.catalogue',
>     'geonode.people', 'geonode.client', 'geonode.themes',
>     'geonode.proxy', 'geonode.social', 'geonode.groups',
>     'geonode.services', 'geonode.geoserver', 'geonode.upload',
>     'geonode.tasks', 'geonode.messaging',
>     'geonode.contrib.metadataxsl', 'geonode.contrib.api_basemaps',
>     'geonode.contrib.ows_api', 'pinax.notifications',
>     'geonode.contrib.monitoring', 'my_geonode', , ) Installed
>     Middleware: ('corsheaders.middleware.CorsMiddleware',
>     'django.middleware.common.CommonMiddleware',
>     'django.contrib.sessions.middleware.SessionMiddleware',
>     'django.contrib.messages.middleware.MessageMiddleware',
>     'dj_pagination.middleware.PaginationMiddleware',
>     'django.middleware.locale.LocaleMiddleware',
>     'django.middleware.csrf.CsrfViewMiddleware',
>     'django.contrib.auth.middleware.AuthenticationMiddleware',
>     'django.middleware.clickjacking.XFrameOptionsMiddleware',
>     'django.middleware.security.SecurityMiddleware',
>     'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
>     'oauth2_provider.middleware.OAuth2TokenMiddleware',
>     'django.middleware.security.SecurityMiddleware',
>     'geonode.contrib.monitoring.middleware.MonitoringMiddleware')
>     Traceback: File
>     "/home/geo/Envs/geonode/lib/python2.7/site-packages/django/core/handlers/base.py"
>     in get_response 132. response = wrapped_callback(request,
>     *callback_args, **callback_kwargs) File
>     "/home/geo/Envs/geonode/lib/python2.7/site-packages/django/contrib/auth/decorators.py"
>     in _wrapped_view 22. return view_func(request, *args, **kwargs)
>     File "/home/geo/Envs/geonode/src/geonode/geonode/layers/views.py"
>     in layer_upload 294. out[_k] =
>     out[_k].decode(saved_layer.charset).encode("utf-8") Exception
>     Type: AttributeError at /layers/upload Exception Value: 'NoneType'
>     object has no attribute 'charset' Request information: GET: No GET
>     data POST: charset = u'UTF-8' permissions =
>     u'{"users":{"AnonymousUser":["view_resourcebase","download_resourcebase"]},"groups":{}}'
>     FILES: shx_file = base_file = shp_file = dbf_file = prj_file =
>     COOKIES: csrftoken = 'RCPSALmmUm4LV9RF7wWzsqxGFfdK1XDn' sessionid
>     = 'h0bcxlw4nutyik4kb63ao9d3pzxud6hq' _ga =
>     'GA1.2.1615965258.1556718183' META: mod_wsgi.listener_port = '80'
>     HTTP_REFERER = 'http://geoportal.dummy.org/layers/upload'
>     mod_wsgi.listener_host = '' HTTP_REVERSE_VIA = 'IPGW2'
>     CONTEXT_DOCUMENT_ROOT = '/home/geonode/my_geonode/my_geonode'
>     SERVER_SOFTWARE = 'Apache/2.4.18 (Ubuntu)' SCRIPT_NAME = u''
>     mod_wsgi.enable_sendfile = '0' HTTP_X_CSRFTOKEN =
>     'RCPSALmmUm4LV9RF7wWzsqxGFfdK1XDn' SERVER_SIGNATURE = '
>     Apache/2.4.18 (Ubuntu) Server at geoportal.dummy.org
>     <http://geoportal.dummy.org> Port 80
>     \n' REQUEST_METHOD = 'POST' PATH_INFO = u'/layers/upload'
>     SERVER_PROTOCOL = 'HTTP/1.1' QUERY_STRING = '' CONTENT_LENGTH =
>     '4451' HTTP_USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64;
>     x64; rv:66.0) Gecko/20100101 Firefox/66.0' HTTP_CONNECTION =
>     'Keep-Alive' HTTP_COOKIE =
>     'csrftoken=RCPSALmmUm4LV9RF7wWzsqxGFfdK1XDn;
>     _ga=GA1.2.1615965258.1556718183;
>     sessionid=h0bcxlw4nutyik4kb63ao9d3pzxud6hq' SERVER_NAME =
>     'geoportal.dummy.org <http://geoportal.dummy.org>' REMOTE_ADDR =
>     '172.30.1.13' mod_wsgi.handler_script = ''
>     mod_wsgi.request_handler = 'wsgi-script' apache.version =
>     wsgi.url_scheme = 'http' PATH_TRANSLATED =
>     '/home/geonode/my_geonode/my_geonode/wsgi.py/layers/upload
>     <http://wsgi.py/layers/upload>' SERVER_PORT = '80'
>     mod_wsgi.queue_start = '1556919366052407' wsgi.multiprocess = True
>     mod_wsgi.input_chunked = '0' SERVER_ADDR = '172.30.1.167'
>     DOCUMENT_ROOT = '/home/geonode/my_geonode/my_geonode'
>     mod_wsgi.process_group = 'geonode' HTTP_X_REQUESTED_WITH =
>     'XMLHttpRequest' mod_wsgi.daemon_connects = '1' SCRIPT_FILENAME =
>     '/home/geonode/my_geonode/my_geonode/wsgi.py' SERVER_ADMIN =
>     'webmaster at localhost' wsgi.input = HTTP_HOST =
>     'geoportal.dummy.org <http://geoportal.dummy.org>' CONTEXT_PREFIX
>     = '' wsgi.multithread = True mod_wsgi.callable_object =
>     'application' mod_wsgi.daemon_restarts = '0' REQUEST_URI =
>     '/layers/upload' HTTP_ACCEPT = '*/*' wsgi.file_wrapper = ''
>     wsgi.version = GATEWAY_INTERFACE = 'CGI/1.1' wsgi.run_once = False
>     wsgi.errors = REMOTE_PORT = '25591' HTTP_ACCEPT_LANGUAGE =
>     'en-GB,en;q=0.5' REQUEST_SCHEME = 'http' mod_wsgi.version =
>     mod_wsgi.script_start = '1556919366052600' CONTENT_TYPE =
>     'multipart/form-data;
>     boundary=---------------------------75853149526340'
>     mod_wsgi.application_group = 'geoportal.cgiarad.org
>     <http://geoportal.cgiarad.org>|' mod_wsgi.script_reloading = '1'
>     mod_wsgi.request_start = '1556919366052122' CSRF_COOKIE =
>     u'RCPSALmmUm4LV9RF7wWzsqxGFfdK1XDn' mod_wsgi.daemon_start =
>     '1556919366052568' Settings: Using settings module
>     my_geonode.settings BROKER_TRANSPORT_OPTIONS = {'fanout_prefix':
>     True, 'fanout_patterns': True, 'visibility_timeout': 86400,
>     'socket_timeout': 60} EMAIL_USE_TLS = False
>     CELERY_SEND_TASK_SENT_EVENT = True DOWNLOAD_FORMATS_METADATA =
>     ['Atom', 'DIF', 'Dublin Core', 'ebRIM', 'FGDC', 'ISO', 'ISO with
>     XSL'] SESSION_SERIALIZER =
>     'django.contrib.sessions.serializers.PickleSerializer'
>     ACCOUNT_EMAIL_REQUIRED = True OGC_SERVER_DEFAULT_USER = 'admin'
>     MESSAGE_STORAGE =
>     'django.contrib.messages.storage.fallback.FallbackStorage'
>     WSGI_APPLICATION = 'my_geonode.wsgi.application'
>     SESSION_COOKIE_NAME = 'sessionid' CELERY_BROKER_URL = 'memory://'
>     VERSION = '2.8.1rc0' AWS_BUCKET_NAME = ''
>     ACCOUNT_CONFIRM_EMAIL_ON_GET = True EMAIL_SSL_KEYFILE =
>     u'********************' SERVER_EMAIL = 'root at localhost'
>     ACCOUNT_EMAIL_VERIFICATION = 'optional' FIRST_DAY_OF_WEEK = 0
>     CACHES = {'default': {'BACKEND':
>     'django.core.cache.backends.dummy.DummyCache'}} CKAN_ORIGINS =
>     [{'url':
>     'https://data.hdx.rwlabs.org/dataset/new?title={name}&dataset_date={date}¬es={abstract}&caveats={caveats}',
>     'css_class': 'hdx', 'label': 'Humanitarian Data Exchange (HDX)'}]
>     SESSION_COOKIE_PATH = '/' UNOCONV_ENABLE = 1 MISSING_THUMBNAIL =
>     'geonode/img/missing_thumb.png'
>     MODELTRANSLATION_FALLBACK_LANGUAGES = 'en'
>     PINAX_NOTIFICATIONS_HOOKSET = CELERY_TASK_IGNORE_RESULT = True
>     DEFAULT_INDEX_TABLESPACE = '' MONITORING_HOST_NAME = 'localhost'
>     THESAURI = [] USE_X_FORWARDED_HOST = False TWITTER_HASHTAGS =
>     ['geonode'] PUBLIC_GEOSERVER = {'source': {'url':
>     'http://localhost:8080/geoserver/ows', 'restUrl': '/gs/rest',
>     'attribution': '© http://localhost:8000/', 'ptype':
>     'gxp_wmscsource', 'title': 'GeoServer - Public Layers'}}
>     GUARDIAN_GET_INIT_ANONYMOUS_USER =
>     'geonode.people.models.get_anonymous_user_instance'
>     CSRF_COOKIE_DOMAIN = None FILE_CHARSET = 'utf-8' DEBUG = True
>     SESSION_FILE_PATH = None DISPLAY_COMMENTS = 1 DATABASE_ENGINE =
>     'postgresql_psycopg2' STATICFILES_DIRS = ['/etc/geonode/media',
>     '/home/geo/Envs/geonode/src/geonode/geonode/static',
>     '/home/geonode/my_geonode/my_geonode/static']
>     CELERY_TASK_CREATE_MISSING_QUEUES = True SECURE_PROXY_SSL_HEADER =
>     None AWS_SECRET_ACCESS_KEY = u'********************'
>     DEBUG_PROPAGATE_EXCEPTIONS = False MONTH_DAY_FORMAT = 'F j'
>     SEARCH_FILTERS = {'REGION_ENABLED': True, 'EXTENT_ENABLED': True,
>     'DATE_ENABLED': True, 'KEYWORDS_ENABLED': u'********************',
>     'CATEGORIES_ENABLED': True, 'TYPE_ENABLED': True,
>     'T_KEYWORDS_ENABLED': u'********************', 'OWNERS_ENABLED':
>     True, 'H_KEYWORDS_ENABLED': u'********************',
>     'TEXT_ENABLED': True} THUMBNAIL_GENERATOR =
>     'geonode.layers.utils.create_gs_thumbnail_geonode' AUTH_USER_MODEL
>     = 'people.Profile' USE_THOUSAND_SEPARATOR = False UNOCONV_TIMEOUT
>     = 30 CELERY_DISABLE_RATE_LIMITS = False CSRF_FAILURE_VIEW =
>     'django.views.csrf.csrf_failure' CELERY_WORKER_SEND_TASK_EVENTS =
>     True CELERY_TASK_SERIALIZER = 'json' DECIMAL_SEPARATOR = '.'
>     IGNORABLE_404_URLS = NOSE_ARGS = ['--nocapture',
>     '--detailed-errors'] TEMPLATE_STRING_IF_INVALID = '' FIXTURE_DIRS
>     = SOCIALACCOUNT_AUTO_SIGNUP = False PINAX_NOTIFICATIONS_BACKENDS =
>     {(0, 'email'): } FORMAT_MODULE_PATH = None ALLOWED_DOCUMENT_TYPES
>     = ['doc', 'docx', 'gif', 'jpg', 'jpeg', 'ods', 'odt', 'odp',
>     'pdf', 'png', 'ppt', 'pptx', 'rar', 'sld', 'tif', 'tiff', 'txt',
>     'xls', 'xlsx', 'xml', 'zip', 'gz', 'qml'] RESOURCE_PUBLISHING =
>     False DISALLOWED_USER_AGENTS = DEFAULT_LAYER_FORMAT = 'image/png'
>     THUNDERFOREST_BASEMAPS = False CELERY_REDIRECT_STDOUTS = True
>     SITENAME = 'my_geonode' CELERY_MESSAGE_COMPRESSION = 'gzip'
>     USE_ETAGS = False DISPLAY_WMS_LINKS = True GEOTIFF_IO_ENABLED = 0
>     PINAX_NOTIFICATIONS_GET_LANGUAGE_MODEL = at 0x7f8c98343c80> USE_TZ
>     = True SHORT_DATETIME_FORMAT = 'm/d/Y P' LANGUAGE_COOKIE_PATH =
>     '/' MAX_DOCUMENT_SIZE = 2 YEAR_MONTH_FORMAT = 'F Y'
>     AWS_QUERYSTRING_AUTH = False CELERY_SEND_TASK_EVENTS = True
>     LANGUAGE_CODE = 'en' ROOT_URLCONF = 'my_geonode.urls' LOGIN_URL =
>     '/account/login/' DEFAULT_MAP_CENTER = DATABASE_HOST = 'localhost'
>     TEMPLATE_DIRS = BROKER_HEARTBEAT = 0 SESSION_CACHE_ALIAS =
>     'default' SESSION_COOKIE_DOMAIN = None
>     PINAX_NOTIFICATIONS_QUEUE_ALL = False FILE_UPLOAD_PERMISSIONS =
>     None BING_API_KEY = u'********************' APPEND_SLASH = True
>     DATABASE_ROUTERS = [] STAMEN_BASEMAPS = False GEOSERVER_LOCATION =
>     'http://localhost/geoserver/' INVITATIONS_ADAPTER =
>     'geonode.people.adapters.LocalAccountAdapter' HOSTNAME =
>     'localhost' EXIF_ENABLED = False CATALOGUE = {'default':
>     {'ENGINE': 'geonode.catalogue.backends.pycsw_local', 'URL':
>     'http://geoportal.dummy.org/catalogue/csw'}} LOCKDOWN_GEONODE = 0
>     MIDDLEWARE_CLASSES = USE_I18N = 1 LANGUAGE_COOKIE_NAME =
>     'django_language' CELERY_TASK_ALWAYS_EAGER = True
>     TEST_RUNNER_PARALLEL = 0 CELERYD_HIJACK_ROOT_LOGGER = True
>     HAYSTACK_SEARCH = 0 X_FRAME_OPTIONS = 'DENY' UNOCONV_EXECUTABLE =
>     '/usr/bin/unoconv' OAUTH2_PROVIDER = {'SCOPES': {'read': 'Read
>     scope', 'write': 'Write scope', 'groups': 'Access to your
>     groups'}, 'CLIENT_ID_GENERATOR_CLASS':
>     'oauth2_provider.generators.ClientIdGenerator'}
>     GEOSERVER_PUBLIC_LOCATION =
>     'http://geoportal.dummy.org/geoserver/' SECURE_SSL_HOST = None
>     NLP_ENABLED = False MONITORING_DISABLE_CSRF = False SOCIAL_ORIGINS
>     = [{'url': 'mailto:?subject={name}&body={url}', 'css_class':
>     'email', 'label': 'Email'}, {'url':
>     'http://www.facebook.com/sharer.php?u={url}', 'css_class': 'fb',
>     'label': 'Facebook'}, {'url':
>     'https://twitter.com/share?url={url}&hashtags={hashtags}',
>     'css_class': 'tw', 'label': 'Twitter'}, {'url':
>     'https://plus.google.com/share?url={url}', 'css_class': 'gp',
>     'label': 'Google +'}] PREPEND_WWW = False AUTH_IP_WHITELIST = []
>     DATABASE_PORT = '5432' DEFAULT_ANONYMOUS_VIEW_PERMISSION = 1
>     GOOGLE_API_KEY = u'********************' GEOIP_PATH =
>     '/usr/local/share/GeoIP' ADMIN_MODERATE_UPLOADS = False
>     TASTYPIE_DEFAULT_FORMATS = ['json']
>     DEFAULT_ANONYMOUS_DOWNLOAD_PERMISSION = 1 FORCE_SCRIPT_NAME = None
>     DISPLAY_RATINGS = 1 TEST_RUNNER_KEEPDB = 0
>     PASSWORD_RESET_TIMEOUT_DAYS = u'********************'
>     DEFAULT_SEARCH_SIZE = 10 CELERYD_CONCURENCY = 1 SESSION_ENGINE =
>     'django.contrib.sessions.backends.db' API_INCLUDE_REGIONS_COUNT =
>     u'********************' PINAX_NOTIFICATIONS_LOCK_WAIT_TIMEOUT = -1
>     MIGRATION_MODULES = {} NLP_MODEL_PATH =
>     '/opt/MITIE/MITIE-models/english/ner_model.dat'
>     PROXY_ALLOWED_HOSTS = ['geoportal.dummy.org
>     <http://geoportal.dummy.org>', 'geoportal.cgiarad.org
>     <http://geoportal.cgiarad.org>', '172.30.1.167', 'localhost']
>     CARTODB_BASEMAPS = False SECURE_BROWSER_XSS_FILTER = True
>     GEONODE_CONTRIB_APPS = SRID = {'DETAIL': 'never'}
>     ACCOUNT_NOTIFY_ON_PASSWORD_CHANGE = u'********************'
>     AGON_RATINGS_CATEGORY_CHOICES = {'maps.Map': {'map': 'How good is
>     this map?'}, 'layers.Layer': {'layer': 'How good is this layer?'},
>     'documents.Document': {'document': 'How good is this document?'}}
>     DEFAULT_EXCEPTION_REPORTER_FILTER =
>     'django.views.debug.SafeExceptionReporterFilter' ADMINS = []
>     MONITORING_DATA_TTL = datetime.timedelta(7) GEOSERVER_EXCHANGE =
>     CELERY_ACCEPT_CONTENT = ['json'] LOCAL_MEDIA_URL = '/uploaded/'
>     LOGOUT_URL = '/account/logout/' USE_GEOSERVER = True
>     EXTRA_LANG_INFO = {'tl': {'code': 'tl', 'name': 'Tagalog', 'bidi':
>     False, 'name_local': 'tagalog'}, 'am': {'code': 'am', 'name':
>     'Amharic', 'bidi': False, 'name_local': 'Amharic'}, 'si': {'code':
>     'si', 'name': 'Sinhala', 'bidi': False, 'name_local': 'sinhala'},
>     'ta': {'code': 'ta', 'name': 'Tamil', 'bidi': False, 'name_local':
>     u'tamil'}} SHOW_PROFILE_EMAIL = False CELERYD_LOG_LEVEL = 1
>     DATABASE_USER = 'geonode' TEMPLATES = [{'DIRS':
>     ['/home/geonode/my_geonode/my_geonode/templates',
>     '/home/geo/Envs/geonode/src/geonode/geonode/templates'],
>     'OPTIONS': {'debug': 1, 'context_processors':
>     ['django.template.context_processors.debug',
>     'django.template.context_processors.i18n',
>     'django.template.context_processors.tz
>     <http://django.template.context_processors.tz>',
>     'django.template.context_processors.request',
>     'django.template.context_processors.media',
>     'django.template.context_processors.static',
>     'django.contrib.auth.context_processors.auth',
>     'django.contrib.messages.context_processors.messages',
>     'django.contrib.auth.context_processors.auth',
>     'geonode.context_processors.resource_urls',
>     'geonode.geoserver.context_processors.geoserver_urls',
>     'geonode.themes.context_processors.custom_theme'], 'loaders':
>     ['django.template.loaders.filesystem.Loader',
>     'django.template.loaders.app_directories.Loader']}, 'NAME':
>     'GeoNode Project Templates', 'BACKEND':
>     'django.template.backends.django.DjangoTemplates'}]
>     EMAIL_SSL_CERTFILE = None CELERY_TASK_QUEUES = DEFAULT_WORKSPACE =
>     'geonode' ASYNC_SIGNALS = False LOCAL_GEOSERVER = {'source':
>     {'url': 'http://geoportal.dummy.org/geoserver/wms', 'restUrl':
>     '/gs/rest', 'ptype': 'gxp_wmscsource'}} DEFAULT_TABLESPACE = ''
>     CELERY_ACKS_LATE = True EMAIL_ENABLE = True SESSION_COOKIE_AGE =
>     1209600 THEME_ACCOUNT_CONTACT_EMAIL = 'admin at example.com
>     <mailto:admin at example.com>' NOTIFICATION_ENABLED = True LANGUAGES
>     = CELERY_TASK_RESULT_EXPIRES = 43200
>     GEONODE_CLIENT_LAYER_PREVIEW_LIBRARY = 'geoext'
>     ABSOLUTE_URL_OVERRIDES = {} OGC_SERVER_DEFAULT_PASSWORD =
>     u'********************' CACHE_MIDDLEWARE_SECONDS = 600
>     CSRF_COOKIE_HTTPONLY = False TEST = False EMAIL_HOST_USER =
>     'Geoportal dummy ' CASCADE_WORKSPACE = 'geonode'
>     CSRF_COOKIE_SECURE = False CELERY_TRACK_STARTED = True UPLOADER =
>     {'SUPPORTED_CRS': ['EPSG:4326', 'EPSG:3785', 'EPSG:3857',
>     'EPSG:900913', 'EPSG:32647', 'EPSG:32736'], 'BACKEND':
>     'geonode.rest', 'OPTIONS': {'TIME_ENABLED': False,
>     'MOSAIC_ENABLED': False, 'GEOGIG_ENABLED': False},
>     'SUPPORTED_EXT': ['.shp', '.csv', '.kml', '.kmz', '.json',
>     '.geojson', '.tif', '.tiff', '.geotiff', '.gml', '.xml']} LICENSES
>     = {'ENABLED': True, 'DETAIL': 'above', 'METADATA': 'verbose'}
>     EMAIL_HOST_PASSWORD = u'********************' PYCSW =
>     {'CONFIGURATION': {'metadata:main': {'identification_fees':
>     'None', 'provider_url': 'http://geoportal.dummy.org/',
>     'identification_keywords': 'sdi, catalogue, discovery, metadata,
>     GeoNode', 'contact_address': 'Mailing Address',
>     'identification_accessconstraints': 'None', 'contact_name':
>     'Lastname, Firstname', 'contact_stateorprovince': 'Administrative
>     Area', 'contact_country': 'Country', 'contact_url': 'Contact URL',
>     'provider_name': 'Organization Name', 'contact_phone':
>     '+xx-xxx-xxx-xxxx', 'contact_hours': 'Hours of Service',
>     'contact_role': 'pointOfContact', 'contact_email': 'Email
>     Address', 'identification_title': 'GeoNode Catalogue',
>     'contact_postalcode': 'Zip or Postal Code', 'contact_city':
>     'City', 'identification_keywords_type': 'theme',
>     'identification_abstract': 'GeoNode is an open source platform
>     that facilitates the creation, sharing, and collaborative use of
>     geospatial data', 'contact_fax': '+xx-xxx-xxx-xxxx',
>     'contact_instructions': 'During hours of service. Off on
>     weekends.', 'contact_position': 'Position Title'},
>     'metadata:inspire': {'languages_supported': 'eng,gre',
>     'default_language': 'eng', 'temp_extent': 'YYYY-MM-DD/YYYY-MM-DD',
>     'conformity_service': 'notEvaluated', 'contact_email': 'Email
>     Address', 'date': 'YYYY-MM-DD', 'contact_name': 'Organization
>     Name', 'gemet_keywords': 'Utility and governmental services',
>     'enabled': 'true'}}} CELERY_RESULT_SERIALIZER = 'json'
>     AWS_STORAGE_BUCKET_NAME = '' FILE_UPLOAD_DIRECTORY_PERMISSIONS =
>     None LOCAL_ROOT = '/home/geonode/my_geonode/my_geonode'
>     FILE_UPLOAD_HANDLERS = DEFAULT_CONTENT_TYPE = 'text/html'
>     DEBUG_STATIC = False MONITORING_SERVICE_NAME = 'local-geonode'
>     SOCIALACCOUNT_PROVIDERS = {'linkedin_oauth2': {'SCOPE':
>     ['r_emailaddress', 'r_basicprofile'], 'PROFILE_FIELDS':
>     ['emailAddress', 'firstName', 'headline', 'id', 'industry',
>     'lastName', 'pictureUrl', 'positions', 'publicProfileUrl',
>     'location', 'specialties', 'summary']}, 'facebook': {'SCOPE':
>     ['email', 'public_profile'], 'METHOD': 'oauth2', 'FIELDS': ['id',
>     'email', 'name', 'first_name', 'last_name', 'verified', 'locale',
>     'timezone', 'link', 'gender']}} STATICFILES_STORAGE =
>     'django.contrib.staticfiles.storage.StaticFilesStorage'
>     USE_WORLDMAP = 0 SILENCED_SYSTEM_CHECKS = ['1_8.W001',
>     'fields.W340'] LOGGING_CONFIG = 'logging.config.dictConfig'
>     TEMPLATE_LOADERS = AUTO_GENERATE_AVATAR_SIZES =
>     HAYSTACK_CONNECTIONS = {'default': {'ENGINE':
>     'haystack.backends.elasticsearch2_backend.Elasticsearch2SearchEngine',
>     'URL': 'http://127.0.0.1:9200/', 'INDEX_NAME': 'haystack'}}
>     GEONODE_INTERNAL_APPS = ACCOUNT_LOGIN_REDIRECT_URL =
>     'http://localhost:8000/' EMAIL_TIMEOUT = None
>     SESSION_COOKIE_SECURE = False GEONODE_CORE_APPS = CACHE_TIME = 0
>     AWS_ACCESS_KEY_ID = u'********************' INSTALLED_APPS =
>     THUMBNAIL_GENERATOR_DEFAULT_BG =
>     'http://a.tile.openstreetmap.org/{z}/{x}/{y}.png' STATIC_ROOT =
>     '/var/www/geonode/static/' SECURE_HSTS_INCLUDE_SUBDOMAINS = True
>     GEONODE_APPS = SESSION_COOKIE_HTTPONLY = True DATETIME_FORMAT = 'N
>     j, Y, P' USER_MESSAGES_ALLOW_MULTIPLE_RECIPIENTS = True
>     GEOTIFF_IO_BASE_URL = 'https://app.geotiff.io' DATE_INPUT_FORMATS
>     = ACCOUNT_LOGOUT_REDIRECT_URL = 'http://localhost:8000/'
>     TWITTER_CARD = 1 CSRF_COOKIE_NAME = 'csrftoken'
>     SESSION_SAVE_EVERY_REQUEST = False NUMBER_GROUPING = 0
>     LOCALE_PATHS = GEONODE_ROOT =
>     '/home/geo/Envs/geonode/src/geonode/geonode' LOGGING = {'loggers':
>     {'geonode': {'handlers': ['applogfile'], 'level': 'DEBUG'},
>     'django': {'handlers': ['applogfile'], 'level': 'DEBUG'}, 'pycsw':
>     {'handlers': ['applogfile'], 'level': 'DEBUG'}, 'owslib':
>     {'handlers': ['applogfile'], 'level': 'DEBUG'},
>     'gsconfig.catalog': {'handlers': ['applogfile'], 'level':
>     'DEBUG'}}, 'disable_existing_loggers': True, 'handlers':
>     {'console': {'formatter': 'simple', 'class':
>     'logging.StreamHandler', 'level': 'DEBUG'}, 'applogfile':
>     {'level': 'DEBUG', 'maxBytes': 15728640, 'backupCount': 10,
>     'class': 'logging.handlers.RotatingFileHandler', 'filename':
>     '/tmp/GEONODE_APP.log'}, 'mail_admins': {'class':
>     'django.utils.log.AdminEmailHandler', 'filters':
>     ['require_debug_false'], 'level': 'ERROR'}}, 'formatters':
>     {'simple': {'format': '%(message)s'}, 'verbose': {'format':
>     '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d
>     %(message)s'}}, 'version': 1, 'filters': {'require_debug_false':
>     {'()': 'django.utils.log.RequireDebugFalse'}}} INTEGRATION = False
>     OGP_URL = 'http://geodata.tufts.edu/solr/select' USE_L10N = 1
>     CELERYD_LOG_FILE = None EMAIL_HOST = 'dummysmtp4.cgiarad.org
>     <http://dummysmtp4.cgiarad.org>' NLP_LOCATION_THRESHOLD = 1.0
>     REST_FRAMEWORK = {'DEFAULT_PERMISSION_CLASSES':
>     ['rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly']}
>     DATABASE_NAME = 'geonode' MEDIA_URL = '/uploaded/'
>     RABBITMQ_SIGNALS_BROKER_URL = 'amqp://localhost:5672'
>     DJANGO_LIVE_TEST_SERVER_ADDRESS = 'localhost:8000'
>     MONITORING_ENABLED = True DOWNLOAD_FORMATS_VECTOR = ['JPEG',
>     'PDF', 'PNG', 'Zipped Shapefile', 'GML 2.0', 'GML 3.1.1', 'CSV',
>     'Excel', 'GeoJSON', 'KML', 'View in Google Earth', 'Tiles', 'QGIS
>     layer file (.qlr)', 'QGIS project file (.qgs)'] SKIP_PERMS_FILTER
>     = False GEONODE_CLIENT_HOOKSET = TWITTER_SITE = '@GeoNode'
>     SLACK_ENABLED = False PROJECT_NAME = 'my_geonode' TEST_RUNNER =
>     'django_nose.NoseTestSuiteRunner' HAYSTACK_FACET_COUNTS = True
>     SECURE_SSL_REDIRECT = False TIME_ZONE = 'UTC'
>     CORS_ORIGIN_ALLOW_ALL = True EMAIL_BACKEND =
>     'django.core.mail.backends.smtp.EmailBackend' DEFAULT_MAP_ZOOM = 0
>     TEMPLATE_CONTEXT_PROCESSORS = MAPBOX_ACCESS_TOKEN =
>     u'********************' S3_STATIC_ENABLED = False
>     PINAX_NOTIFICATIONS_LANGUAGE_MODEL = None LANGUAGES_BIDI =
>     HAYSTACK_SIGNAL_PROCESSOR =
>     'haystack.signals.RealtimeSignalProcessor' CLIENT_RESULTS_LIMIT =
>     20 MODELTRANSLATION_DEFAULT_LANGUAGE = 'en'
>     GEOFENCE_SECURITY_ENABLED = True SOCIALACCOUNT_ADAPTER =
>     'geonode.people.adapters.SocialAccountAdapter' DATABASE_PASSWORD =
>     u'********************' SECURE_HSTS_SECONDS = 3600
>     TEST_NON_SERIALIZED_APPS = [] DEFAULT_CHARSET = 'utf-8'
>     OPENGRAPH_ENABLED = 1 CELERY_MAX_CACHED_RESULTS = 32768
>     CELERY_RESULT_PERSISTENT = False ALLOWED_HOSTS =
>     ['geoportal.dummy.org <http://geoportal.dummy.org>',
>     'geoportal.cgiarad.org <http://geoportal.cgiarad.org>',
>     '172.30.1.167', 'localhost'] OGC_SERVER = {'default':
>     {'BACKEND_WRITE_ENABLED': True, 'PASSWORD':
>     u'********************', 'WPS_ENABLED': True, 'LOGIN_ENDPOINT':
>     'j_spring_oauth2_geonode_login', 'PUBLIC_LOCATION':
>     'http://geoportal.dummy.org/geoserver/',
>     'GEONODE_SECURITY_ENABLED': True, 'PRINT_NG_ENABLED': True,
>     'GEOGIG_DATASTORE_DIR': '', 'PG_GEOGIG': False,
>     'GEOFENCE_SECURITY_ENABLED': True, 'LOCATION':
>     'http://localhost/geoserver/', 'MAPFISH_PRINT_ENABLED': True,
>     'LOGOUT_ENDPOINT': 'j_spring_oauth2_geonode_logout', 'TIMEOUT':
>     10, 'WMST_ENABLED': False, 'DATASTORE': 'datastore', 'LOG_FILE':
>     '/usr/share/geoserver/data/logs/geoserver.log', 'BACKEND':
>     'geonode.geoserver', 'GEOGIG_ENABLED': False, 'USER': 'admin'}}
>     DOWNLOAD_FORMATS_RASTER = ['JPEG', 'PDF', 'PNG', 'ArcGrid',
>     'GeoTIFF', 'Gtopo30', 'ImageMosaic', 'KML', 'View in Google
>     Earth', 'Tiles', 'GML', 'GZIP', 'QGIS layer file (.qlr)', 'QGIS
>     project file (.qgs)', 'Zipped All Files'] AUTH_EXEMPT_URLS =
>     EMAIL_SUBJECT_PREFIX = '[Django] ' THOUSAND_SEPARATOR = ','
>     STATICFILES_FINDERS = S3_MEDIA_ENABLED = False
>     CELERY_WORKER_DISABLE_RATE_LIMITS = False STATIC_URL = '/static/'
>     TIME_INPUT_FORMATS = SECURE_REDIRECT_EXEMPT = [] DATABASES =
>     {'default': {'ENGINE': 'django.db.backends.postgresql_psycopg2',
>     'AUTOCOMMIT': True, 'ATOMIC_REQUESTS': False, 'NAME': 'geonode',
>     'CONN_MAX_AGE': 0, 'CONN_TOUT': 900, 'TIME_ZONE': 'UTC', 'PORT':
>     '5432', 'HOST': 'localhost', 'USER': 'geonode', 'TEST':
>     {'COLLATION': None, 'CHARSET': None, 'NAME': None, 'MIRROR':
>     None}, 'PASSWORD': u'********************', 'OPTIONS': {}},
>     'datastore': {'ENGINE': 'django.contrib.gis.db.backends.postgis',
>     'AUTOCOMMIT': True, 'ATOMIC_REQUESTS': False, 'NAME':
>     'geonode_data', 'CONN_MAX_AGE': 0, 'CONN_TOUT': 900, 'TIME_ZONE':
>     'UTC', 'PORT': '5432', 'HOST': 'localhost', 'USER': 'geonode',
>     'TEST': {'COLLATION': None, 'CHARSET': None, 'NAME': None,
>     'MIRROR': None}, 'PASSWORD': u'********************', 'OPTIONS':
>     {}}} LEAFLET_CONFIG = {'SRID': 3857, 'RESET_VIEW': False, 'TILES':
>     [('Watercolor',
>     'http://{s}.tile.stamen.com/watercolor/{z}/{x}/{y}.png
>     <http://tile.stamen.com/watercolor/%7Bz%7D/%7Bx%7D/%7By%7D.png>',
>     'Map tiles by Stamen Design, CC BY 3.0 — Map data © OpenStreetMap
>     contributors, CC-BY-SA'), ('Toner Lite',
>     'http://{s}.tile.stamen.com/toner-lite/{z}/{x}/{y}.png
>     <http://tile.stamen.com/toner-lite/%7Bz%7D/%7Bx%7D/%7By%7D.png>',
>     'Map tiles by Stamen Design, CC BY 3.0 — Map data © OpenStreetMap
>     contributors, CC-BY-SA')], 'PLUGINS': {u'forms': {u'css': ,
>     u'auto-include': False, u'js': }, u'__default__': {u'css': ,
>     u'js': }, u'ALL': {u'css': , u'js': }, 'leaflet-plugins': {'css':
>     , 'auto-include': True, 'js': }, u'__is_normalized__': True}}
>     ACCOUNT_APPROVAL_REQUIRED = 0 DATABASE_URL =
>     'sqlite:////home/geo/Envs/geonode/src/geonode/geonode/development.db'
>     MODELTRANSLATION_LANGUAGES = ['en'] SLACK_WEBHOOK_URLS =
>     ['https://hooks.slack.com/services/T000/B000/XX'] ALT_OSM_BASEMAPS
>     = False ACCOUNT_OPEN_SIGNUP = True ACCOUNT_ADAPTER =
>     'geonode.people.adapters.LocalAccountAdapter'
>     SECURE_CONTENT_TYPE_NOSNIFF = True SECRET_KEY =
>     u'********************' FILE_UPLOAD_TEMP_DIR = None
>     DEFAULT_MAP_CRS = 'EPSG:900913' DATA_UPLOAD_MAX_NUMBER_FIELDS =
>     100000 MAP_CLIENT_USE_CROSS_ORIGIN_CREDENTIALS = 0
>     REDIS_SIGNALS_BROKER_URL = 'redis://localhost:6379/0'
>     SETTINGS_MODULE = 'my_geonode.settings' AUTHENTICATION_BACKENDS =
>     CELERY_ALWAYS_EAGER = True MODIFY_TOPICCATEGORY = True
>     SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
>     LANGUAGE_COOKIE_DOMAIN = None DEFAULT_FILE_STORAGE =
>     'django.core.files.storage.FileSystemStorage' SITEURL =
>     'http://geoportal.dummy.org/' LANGUAGE_COOKIE_AGE = None
>     SOCIALACCOUNT_PROFILE_EXTRACTORS = {'linkedin_oauth2':
>     'geonode.people.profileextractors.LinkedInExtractor', 'facebook':
>     'geonode.people.profileextractors.FacebookExtractor'} MANAGERS =
>     [] SESSION_EXPIRE_AT_BROWSER_CLOSE = False TIME_FORMAT = 'P'
>     CACHE_MIDDLEWARE_ALIAS = 'default' SERVICE_UPDATE_INTERVAL = 0
>     CSRF_COOKIE_PATH = '/' NLP_LIBRARY_PATH = '/opt/MITIE/mitielib'
>     MONITORING_CONFIG = None CELERYD_POOL_RESTARTS = True PROJECT_ROOT
>     = '/home/geo/Envs/geonode/src/geonode/geonode'
>     CACHE_MIDDLEWARE_KEY_PREFIX = u'********************' RISKS =
>     {'PDF_GENERATOR': {'BIN': '/usr/bin/wkhtml2pdf', 'ARGS': [],
>     'NAME': 'wkhtml2pdf'}, 'DEFAULT_LOCATION': None} MAP_BASELAYERS =
>     [{'source': {'url': 'http://geoportal.dummy.org/geoserver/wms',
>     'restUrl': '/gs/rest', 'ptype': 'gxp_wmscsource'}}, {'group':
>     'background', 'name': 'background', 'args': ['No background'],
>     'visibility': False, 'source': {'ptype': 'gxp_olsource'}, 'fixed':
>     True, 'type': 'OpenLayers.Layer'}, {'source': {'ptype':
>     'gxp_olsource'}, 'wrapDateLine': True, 'fixed': True,
>     'attribution': '© UNESCO', 'name': 'background', 'title':
>     'UNESCO', 'group': 'background', 'args': ['UNESCO',
>     'http://en.unesco.org/tiles/${z}/${x}/${y}.png'], 'type':
>     'OpenLayers.Layer.XYZ <http://OpenLayers.Layer.XYZ>',
>     'visibility': False}, {'source': {'ptype': 'gxp_olsource'},
>     'wrapDateLine': True, 'fixed': True, 'attribution': '© UNESCO',
>     'name': 'background', 'title': 'UNESCO GEODATA', 'group':
>     'background', 'args': ['UNESCO GEODATA',
>     'http://en.unesco.org/tiles/geodata/${z}/${x}/${y}.png'], 'type':
>     'OpenLayers.Layer.XYZ <http://OpenLayers.Layer.XYZ>',
>     'visibility': False}, {'source': {'ptype': 'gxp_olsource'},
>     'wrapDateLine': True, 'fixed': True, 'attribution': "©
>     OpenStreetMap, Tiles courtesy of Humanitarian OpenStreetMap Team",
>     'name': 'background', 'title': 'Humanitarian OpenStreetMap',
>     'group': 'background', 'args': ['Humanitarian OpenStreetMap',
>     'http://a.tile.openstreetmap.fr/hot/${z}/${x}/${y}.png'], 'type':
>     'OpenLayers.Layer.XYZ <http://OpenLayers.Layer.XYZ>',
>     'visibility': False}, {'source': {'ptype': 'gxp_olsource'},
>     'wrapDateLine': True, 'fixed': True, 'attribution': "© Mapbox ©
>     OpenStreetMap Improve this map", 'name': 'background', 'title':
>     'MapBox Satellite Streets', 'group': 'background', 'args':
>     ['MapBox Satellite Streets',
>     'http://api.mapbox.com/styles/v1/mapbox/satellite-streets-v9/tiles/${z}/${x}/${y}?access_token='],
>     'type': 'OpenLayers.Layer.XYZ <http://OpenLayers.Layer.XYZ>',
>     'visibility': False}, {'source': {'ptype': 'gxp_olsource'},
>     'wrapDateLine': True, 'fixed': True, 'attribution': "© Mapbox ©
>     OpenStreetMap Improve this map", 'name': 'background', 'title':
>     'MapBox Streets', 'group': 'background', 'args': ['MapBox
>     Streets',
>     'http://api.mapbox.com/styles/v1/mapbox/streets-v9/tiles/${z}/${x}/${y}?access_token='],
>     'type': 'OpenLayers.Layer.XYZ <http://OpenLayers.Layer.XYZ>',
>     'visibility': False}, {'source': {'ptype': 'gxp_osmsource'},
>     'wrapDateLine': True, 'attribution': "© OpenStreetMap
>     contributors", 'name': 'mapnik', 'title': 'OpenStreetMap',
>     'group': 'background', 'fixed': True, 'type':
>     'OpenLayers.Layer.OSM', 'visibility': True}] LOGIN_REDIRECT_URL =
>     '/' GROUP_PRIVATE_RESOURCES = False DATE_FORMAT = 'N j, Y'
>     LOCAL_SIGNALS_BROKER_URL = 'memory://' MEDIA_ROOT =
>     '/var/www/geonode/uploaded' PROXY_URL = '/proxy/?url='
>     TEMPLATE_DEBUG = False DEFAULT_FROM_EMAIL = 'Geoportal dummy '
>     FREETEXT_KEYWORDS_READONLY = u'********************'
>     GEONODE_EXCHANGE = NOTIFICATIONS_MODULE = 'pinax.notifications'
>     SITE_ID = 1 ALLOWED_INCLUDE_ROOTS = API_LIMIT_PER_PAGE =
>     u'********************' SHORT_DATE_FORMAT = 'm/d/Y'
>     ACTSTREAM_SETTINGS = {'GFK_FETCH_DEPTH': 1, 'USE_JSONFIELD': True,
>     'FETCH_RELATIONS': True, 'USE_PREFETCH': False}
>     AWS_S3_BUCKET_DOMAIN = '.s3.amazonaws.com
>     <http://s3.amazonaws.com>' FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
>     DISPLAY_SOCIAL = 1 CSRF_COOKIE_AGE = 31449600 EMAIL_USE_SSL =
>     False INTERNAL_IPS = EMAIL_PORT = 25 GROUP_MANDATORY_RESOURCES =
>     False PASSWORD_HASHERS = u'********************' ANONYMOUS_USER_ID
>     = '-1' DATETIME_INPUT_FORMATS = 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.
>
>
>     Thank you very much,
>
>
>     Michael Härtel
>
>     _______________________________________________
>     geonode-devel mailing list
>     geonode-devel at lists.osgeo.org <mailto:geonode-devel at lists.osgeo.org>
>     https://lists.osgeo.org/mailman/listinfo/geonode-devel
>
>
>
> -- 
>
> ==
>
> GeoServer Professional Services from the experts! Visit 
> http://goo.gl/it488V for more information.==Ing. Alessio Fabiani
>
> @alfa7691Founder/Technical Lead
>
> GeoSolutions S.A.S.Via di Montramito 3/A - 55054  Massarosa (LU) - 
> Italyphone: +39 0584 962313fax:     +39 0584 1660272mob:   +39 331 6233686
>
> http://www.geo-solutions.ithttp://twitter.com/geosolutions_it-------------------------------------------------------
>
> Con riferimento alla normativa sul trattamento dei dati personali 
> (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati 
> “GDPR”), si precisa che ogni circostanza inerente alla presente email 
> (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui 
> conoscenza è riservata al/i solo/i destinatario/i indicati dallo 
> scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a 
> cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato 
> se potesse darmene notizia.
>
> This email is intended only for the person or entity to which it is 
> addressed and may contain information that is privileged, confidential 
> or otherwise protected from disclosure. We remind that - as provided 
> by European Regulation 2016/679 “GDPR” - copying, dissemination or use 
> of this e-mail or the information herein by anyone other than the 
> intended recipient is prohibited. If you have received this email by 
> mistake, please notify us immediately by telephone or e-mail.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/geonode-devel/attachments/20190506/8055481d/attachment-0001.html>
-------------- next part --------------
--3b265e54-A--
[06/May/2019:21:27:06 +0100] XNCYmqweAacAAHgDWrgAAAAM 172.30.1.13 12095 172.30.1.167 80
--3b265e54-B--
POST /layers/upload HTTP/1.1
Reverse-Via: IPGW2
Host: geoportal.dummy.org
Cookie: csrftoken=SG4P96vwCdqTIOLS3N4puFHnw2hw95AD; _ga=GA1.2.1615965258.1556718183; sessionid=vcjr90yt9cihfstmyvbh0a52yxqdcyc4
Referer: http://geoportal.dummy.org/layers/upload
Content-Type: multipart/form-data; boundary=---------------------------642852212780
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0
Accept: */*
Accept-Language: en-GB,en;q=0.5
X-CSRFToken: SG4P96vwCdqTIOLS3N4puFHnw2hw95AD
X-Requested-With: XMLHttpRequest
Connection: Keep-Alive
Content-Length: 4435

--3b265e54-I--
permissions=%7b%22users%22%3a%7b%22AnonymousUser%22%3a%5b%22view%5fresourcebase%22%2c%22download%5fresourcebase%22%5d%7d%2c%22groups%22%3a%7b%7d%7d&charset=UTF%2d8
--3b265e54-F--
HTTP/1.1 500 INTERNAL SERVER ERROR
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
Content-Language: en
Vary: Authorization,Accept-Language,Cookie
X-Frame-Options: DENY
Content-Length: 31933
Connection: close
Content-Type: text/plain

--3b265e54-E--
AttributeError at /layers/upload
'NoneType' object has no attribute 'charset'

Request Method: POST
Request URL: http://geoportal.dummy.org/layers/upload
Django Version: 1.8.19
Python Executable: /usr/bin/python
Python Version: 2.7.12
Python Path: ['/home/geonode/my_geonode', '/home/geo/Envs/geonode/lib/python2.7/site-packages', '/home/geo/Envs/geonode/src/geonode', '/home/dummygeonode/my_geonode', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat', '/var/www', '/var/www']
Server time: Mon, 6 May 2019 20:27:06 +0000
Installed Applications:
('modeltranslation',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'django.contrib.admin',
 'django.contrib.sitemaps',
 'django.contrib.staticfiles',
 'django.contrib.messages',
 'django.contrib.humanize',
 'django.contrib.gis',
 'dj_pagination',
 'taggit',
 'treebeard',
 'geoexplorer',
 'leaflet',
 'bootstrap3_datetime',
 'django_extensions',
 'django_basic_auth',
 'autocomplete_light',
 'mptt',
 'storages',
 'floppyforms',
 'pinax_theme_bootstrap',
 'django_forms_bootstrap',
 'avatar',
 'dialogos',
 'agon_ratings',
 'announcements',
 'actstream',
 'user_messages',
 'tastypie',
 'polymorphic',
 'guardian',
 'oauth2_provider',
 'corsheaders',
 'invitations',
 'allauth',
 'allauth.account',
 'allauth.socialaccount',
 'rest_framework',
 'geonode',
 'geonode.api',
 'geonode.base',
 'geonode.layers',
 'geonode.maps',
 'geonode.documents',
 'geonode.security',
 'geonode.catalogue',
 'geonode.people',
 'geonode.client',
 'geonode.themes',
 'geonode.proxy',
 'geonode.social',
 'geonode.groups',
 'geonode.services',
 'geonode.geoserver',
 'geonode.upload',
 'geonode.tasks',
 'geonode.messaging',
 'geonode.contrib.metadataxsl',
 'geonode.contrib.api_basemaps',
 'geonode.contrib.ows_api',
 'pinax.notifications',
 'geonode.contrib.monitoring',
 'my_geonode',
 <Celery geonode at 0x7f5c711ba990>,
 <Celery my_geonode at 0x7f5c712c46d0>)
Installed Middleware:
('corsheaders.middleware.CorsMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'dj_pagination.middleware.PaginationMiddleware',
 'django.middleware.locale.LocaleMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'oauth2_provider.middleware.OAuth2TokenMiddleware',
 'django.middleware.security.SecurityMiddleware',
 'geonode.contrib.monitoring.middleware.MonitoringMiddleware')

Traceback:
File "/home/geo/Envs/geonode/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/geo/Envs/geonode/lib/python2.7/site-packages/django/contrib/auth/decorators.py" in _wrapped_view
  22.                 return view_func(request, *args, **kwargs)
File "/home/geo/Envs/geonode/src/geonode/geonode/layers/views.py" in layer_upload
  294.                         out[_k] = out[_k].decode(saved_layer.charset).encode("utf-8")

Exception Type: AttributeError at /layers/upload
Exception Value: 'NoneType' object has no attribute 'charset'
Request information:
GET: No GET data

POST:
charset = u'UTF-8'
permissions = u'{"users":{"AnonymousUser":["view_resourcebase","download_resourcebase"]},"groups":{}}'

FILES:
shx_file = <InMemoryUploadedFile: chinese_poly.shx (application/octet-stream)>
base_file = <InMemoryUploadedFile: chinese_poly.shp (application/octet-stream)>
shp_file = <InMemoryUploadedFile: chinese_poly.shp (application/octet-stream)>
dbf_file = <InMemoryUploadedFile: chinese_poly.dbf (application/octet-stream)>
prj_file = <InMemoryUploadedFile: chinese_poly.prj (application/octet-stream)>

COOKIES:
csrftoken = 'SG4P96vwCdqTIOLS3N4puFHnw2hw95AD'
sessionid = 'vcjr90yt9cihfstmyvbh0a52yxqdcyc4'
_ga = 'GA1.2.1615965258.1556718183'

META:
mod_wsgi.listener_port = '80'
HTTP_REFERER = 'http://geoportal.dummy.org/layers/upload'
mod_wsgi.listener_host = ''
HTTP_REVERSE_VIA = 'IPGW2'
CONTEXT_DOCUMENT_ROOT = '/home/geonode/my_geonode/my_geonode'
SERVER_SOFTWARE = 'Apache/2.4.18 (Ubuntu)'
SCRIPT_NAME = u''
mod_wsgi.enable_sendfile = '0'
HTTP_X_CSRFTOKEN = 'SG4P96vwCdqTIOLS3N4puFHnw2hw95AD'
SERVER_SIGNATURE = '<address>Apache/2.4.18 (Ubuntu) Server at geoportal.dummy.org Port 80</address>\n'
REQUEST_METHOD = 'POST'
PATH_INFO = u'/layers/upload'
SERVER_PROTOCOL = 'HTTP/1.1'
QUERY_STRING = ''
CONTENT_LENGTH = '4435'
HTTP_USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0'
HTTP_CONNECTION = 'Keep-Alive'
HTTP_COOKIE = 'csrftoken=SG4P96vwCdqTIOLS3N4puFHnw2hw95AD; _ga=GA1.2.1615965258.1556718183; sessionid=vcjr90yt9cihfstmyvbh0a52yxqdcyc4'
SERVER_NAME = 'geoportal.dummy.org'
REMOTE_ADDR = '172.30.1.13'
mod_wsgi.handler_script = ''
mod_wsgi.request_handler = 'wsgi-script'
apache.version = 
wsgi.url_scheme = 'http'
PATH_TRANSLATED = '/home/geonode/my_geonode/my_geonode/wsgi.py/layers/upload'
SERVER_PORT = '80'
mod_wsgi.queue_start = '1557174426297747'
wsgi.multiprocess = True
mod_wsgi.input_chunked = '0'
SERVER_ADDR = '172.30.1.167'
DOCUMENT_ROOT = '/home/geonode/my_geonode/my_geonode'
mod_wsgi.process_group = 'geonode'
HTTP_X_REQUESTED_WITH = 'XMLHttpRequest'
mod_wsgi.daemon_connects = '1'
SCRIPT_FILENAME = '/home/geonode/my_geonode/my_geonode/wsgi.py'
SERVER_ADMIN = 'webmaster at localhost'
wsgi.input = <mod_wsgi.Input object at 0x7f5c70267330>
HTTP_HOST = 'geoportal.dummy.org'
CONTEXT_PREFIX = ''
wsgi.multithread = True
mod_wsgi.callable_object = 'application'
mod_wsgi.daemon_restarts = '0'
REQUEST_URI = '/layers/upload'
HTTP_ACCEPT = '*/*'
wsgi.file_wrapper = ''
wsgi.version = 
GATEWAY_INTERFACE = 'CGI/1.1'
wsgi.run_once = False
wsgi.errors = <mod_wsgi.Log object at 0x7f5c6fbdd3d8>
REMOTE_PORT = '12095'
HTTP_ACCEPT_LANGUAGE = 'en-GB,en;q=0.5'
REQUEST_SCHEME = 'http'
mod_wsgi.version = 
mod_wsgi.script_start = '1557174426297945'
CONTENT_TYPE = 'multipart/form-data; boundary=---------------------------642852212780'
mod_wsgi.application_group = 'geoportal.cgiarad.org|'
mod_wsgi.script_reloading = '1'
mod_wsgi.request_start = '1557174426252120'
CSRF_COOKIE = u'SG4P96vwCdqTIOLS3N4puFHnw2hw95AD'
UNIQUE_ID = 'XNCYmqweAacAAHgDWrgAAAAM'
mod_wsgi.daemon_start = '1557174426297905'

Settings:
Using settings module my_geonode.settings
BROKER_TRANSPORT_OPTIONS = {'fanout_prefix': True, 'fanout_patterns': True, 'visibility_timeout': 86400, 'socket_timeout': 60}
EMAIL_USE_TLS = False
CELERY_SEND_TASK_SENT_EVENT = True
DOWNLOAD_FORMATS_METADATA = ['Atom', 'DIF', 'Dublin Core', 'ebRIM', 'FGDC', 'ISO', 'ISO with XSL']
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer'
ACCOUNT_EMAIL_REQUIRED = True
OGC_SERVER_DEFAULT_USER = 'admin'
MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage'
WSGI_APPLICATION = 'my_geonode.wsgi.application'
SESSION_COOKIE_NAME = 'sessionid'
CELERY_BROKER_URL = 'memory://'
VERSION = '2.8.1rc0'
AWS_BUCKET_NAME = ''
ACCOUNT_CONFIRM_EMAIL_ON_GET = True
EMAIL_SSL_KEYFILE = u'********************'
SERVER_EMAIL = 'root at localhost'
ACCOUNT_EMAIL_VERIFICATION = 'optional'
FIRST_DAY_OF_WEEK = 0
CACHES = {'default': {'BACKEND': 'django.core.cache.backends.dummy.DummyCache'}}
CKAN_ORIGINS = [{'url': 'https://data.hdx.rwlabs.org/dataset/new?title={name}&dataset_date={date}&notes={abstract}&caveats={caveats}', 'css_class': 'hdx', 'label': 'Humanitarian Data Exchange (HDX)'}]
SESSION_COOKIE_PATH = '/'
UNOCONV_ENABLE = 1
MISSING_THUMBNAIL = 'geonode/img/missing_thumb.png'
MODELTRANSLATION_FALLBACK_LANGUAGES = 'en'
PINAX_NOTIFICATIONS_HOOKSET = <pinax.notifications.hooks.DefaultHookSet object at 0x7f5c71949bd0>
CELERY_TASK_IGNORE_RESULT = True
DEFAULT_INDEX_TABLESPACE = ''
MONITORING_HOST_NAME = 'localhost'
THESAURI = []
USE_X_FORWARDED_HOST = False
TWITTER_HASHTAGS = ['geonode']
PUBLIC_GEOSERVER = {'source': {'url': 'http://localhost:8080/geoserver/ows', 'restUrl': '/gs/rest', 'attribution': '© http://localhost:8000/', 'ptype': 'gxp_wmscsource', 'title': 'GeoServer - Public Layers'}}
GUARDIAN_GET_INIT_ANONYMOUS_USER = 'geonode.people.models.get_anonymous_user_instance'
CSRF_COOKIE_DOMAIN = None
FILE_CHARSET = 'utf-8'
DEBUG = True
SESSION_FILE_PATH = None
DISPLAY_COMMENTS = 1
DATABASE_ENGINE = 'postgresql_psycopg2'
STATICFILES_DIRS = ['/etc/geonode/media', '/home/geo/Envs/geonode/src/geonode/geonode/static', '/home/geonode/my_geonode/my_geonode/static']
CELERY_TASK_CREATE_MISSING_QUEUES = True
SECURE_PROXY_SSL_HEADER = None
AWS_SECRET_ACCESS_KEY = u'********************'
DEBUG_PROPAGATE_EXCEPTIONS = False
MONTH_DAY_FORMAT = 'F j'
SEARCH_FILTERS = {'REGION_ENABLED': True, 'EXTENT_ENABLED': True, 'DATE_ENABLED': True, 'KEYWORDS_ENABLED': u'********************', 'CATEGORIES_ENABLED': True, 'TYPE_ENABLED': True, 'T_KEYWORDS_ENABLED': u'********************', 'OWNERS_ENABLED': True, 'H_KEYWORDS_ENABLED': u'********************', 'TEXT_ENABLED': True}
THUMBNAIL_GENERATOR = 'geonode.layers.utils.create_gs_thumbnail_geonode'
AUTH_USER_MODEL = 'people.Profile'
USE_THOUSAND_SEPARATOR = False
UNOCONV_TIMEOUT = 30
CELERY_DISABLE_RATE_LIMITS = False
CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
CELERY_WORKER_SEND_TASK_EVENTS = True
CELERY_TASK_SERIALIZER = 'json'
DECIMAL_SEPARATOR = '.'
IGNORABLE_404_URLS = 
NOSE_ARGS = ['--nocapture', '--detailed-errors']
TEMPLATE_STRING_IF_INVALID = ''
FIXTURE_DIRS = 
SOCIALACCOUNT_AUTO_SIGNUP = False
PINAX_NOTIFICATIONS_BACKENDS = {(0, 'email'): <pinax.notifications.backends.email.EmailBackend object at 0x7f5c7194f050>}
FORMAT_MODULE_PATH = None
ALLOWED_DOCUMENT_TYPES = ['doc', 'docx', 'gif', 'jpg', 'jpeg', 'ods', 'odt', 'odp', 'pdf', 'png', 'ppt', 'pptx', 'rar', 'sld', 'tif', 'tiff', 'txt', 'xls', 'xlsx', 'xml', 'zip', 'gz', 'qml']
RESOURCE_PUBLISHING = False
DISALLOWED_USER_AGENTS = 
DEFAULT_LAYER_FORMAT = 'image/png'
THUNDERFOREST_BASEMAPS = False
CELERY_REDIRECT_STDOUTS = True
SITENAME = 'my_geonode'
CELERY_MESSAGE_COMPRESSION = 'gzip'
USE_ETAGS = False
DISPLAY_WMS_LINKS = True
GEOTIFF_IO_ENABLED = 0
PINAX_NOTIFICATIONS_GET_LANGUAGE_MODEL = <function <lambda> at 0x7f5c7194cc80>
USE_TZ = True
SHORT_DATETIME_FORMAT = 'm/d/Y P'
LANGUAGE_COOKIE_PATH = '/'
MAX_DOCUMENT_SIZE = 2
YEAR_MONTH_FORMAT = 'F Y'
AWS_QUERYSTRING_AUTH = False
CELERY_SEND_TASK_EVENTS = True
LANGUAGE_CODE = 'en'
ROOT_URLCONF = 'my_geonode.urls'
LOGIN_URL = '/account/login/'
DEFAULT_MAP_CENTER = 
DATABASE_HOST = 'localhost'
TEMPLATE_DIRS = 
BROKER_HEARTBEAT = 0
SESSION_CACHE_ALIAS = 'default'
SESSION_COOKIE_DOMAIN = None
PINAX_NOTIFICATIONS_QUEUE_ALL = False
FILE_UPLOAD_PERMISSIONS = None
BING_API_KEY = u'********************'
APPEND_SLASH = True
DATABASE_ROUTERS = []
STAMEN_BASEMAPS = False
GEOSERVER_LOCATION = 'http://localhost/geoserver/'
INVITATIONS_ADAPTER = 'geonode.people.adapters.LocalAccountAdapter'
HOSTNAME = 'localhost'
EXIF_ENABLED = False
CATALOGUE = {'default': {'ENGINE': 'geonode.catalogue.backends.pycsw_local', 'URL': 'http://geoportal.dummy.org/catalogue/csw'}}
LOCKDOWN_GEONODE = 0
MIDDLEWARE_CLASSES = 
USE_I18N = 1
LANGUAGE_COOKIE_NAME = 'django_language'
CELERY_TASK_ALWAYS_EAGER = True
TEST_RUNNER_PARALLEL = 0
CELERYD_HIJACK_ROOT_LOGGER = True
HAYSTACK_SEARCH = 0
X_FRAME_OPTIONS = 'DENY'
UNOCONV_EXECUTABLE = '/usr/bin/unoconv'
OAUTH2_PROVIDER = {'SCOPES': {'read': 'Read scope', 'write': 'Write scope', 'groups': 'Access to your groups'}, 'CLIENT_ID_GENERATOR_CLASS': 'oauth2_provider.generators.ClientIdGenerator'}
GEOSERVER_PUBLIC_LOCATION = 'http://geoportal.dummy.org/geoserver/'
SECURE_SSL_HOST = None
NLP_ENABLED = False
MONITORING_DISABLE_CSRF = False
SOCIAL_ORIGINS = [{'url': 'mailto:?subject={name}&body={url}', 'css_class': 'email', 'label': 'Email'}, {'url': 'http://www.facebook.com/sharer.php?u={url}', 'css_class': 'fb', 'label': 'Facebook'}, {'url': 'https://twitter.com/share?url={url}&hashtags={hashtags}', 'css_class': 'tw', 'label': 'Twitter'}, {'url': 'https://plus.google.com/share?url={url}', 'css_class': 'gp', 'label': 'Google +'}]
PREPEND_WWW = False
AUTH_IP_WHITELIST = []
DATABASE_PORT = '5432'
DEFAULT_ANONYMOUS_VIEW_PERMISSION = 1
GOOGLE_API_KEY = u'********************'
GEOIP_PATH = '/usr/local/share/GeoIP'
ADMIN_MODERATE_UPLOADS = False
TASTYPIE_DEFAULT_FORMATS = ['json']
DEFAULT_ANONYMOUS_DOWNLOAD_PERMISSION = 1
FORCE_SCRIPT_NAME = None
DISPLAY_RATINGS = 1
TEST_RUNNER_KEEPDB = 0
PASSWORD_RESET_TIMEOUT_DAYS = u'********************'
DEFAULT_SEARCH_SIZE = 10
CELERYD_CONCURENCY = 1
SESSION_ENGINE = 'django.contrib.sessions.backends.db'
API_INCLUDE_REGIONS_COUNT = u'********************'
PINAX_NOTIFICATIONS_LOCK_WAIT_TIMEOUT = -1
MIGRATION_MODULES = {}
NLP_MODEL_PATH = '/opt/MITIE/MITIE-models/english/ner_model.dat'
PROXY_ALLOWED_HOSTS = ['geoportal.dummy.org', 'geoportal.cgiarad.org', '172.30.1.167', 'localhost']
CARTODB_BASEMAPS = False
SECURE_BROWSER_XSS_FILTER = True
GEONODE_CONTRIB_APPS = 
SRID = {'DETAIL': 'never'}
ACCOUNT_NOTIFY_ON_PASSWORD_CHANGE = u'********************'
AGON_RATINGS_CATEGORY_CHOICES = {'maps.Map': {'map': 'How good is this map?'}, 'layers.Layer': {'layer': 'How good is this layer?'}, 'documents.Document': {'document': 'How good is this document?'}}
DEFAULT_EXCEPTION_REPORTER_FILTER = 'django.views.debug.SafeExceptionReporterFilter'
ADMINS = []
MONITORING_DATA_TTL = datetime.timedelta(7)
GEOSERVER_EXCHANGE = <unbound Exchange geonode(topic)>
CELERY_ACCEPT_CONTENT = ['json']
LOCAL_MEDIA_URL = '/uploaded/'
LOGOUT_URL = '/account/logout/'
USE_GEOSERVER = True
EXTRA_LANG_INFO = {'tl': {'code': 'tl', 'name': 'Tagalog', 'bidi': False, 'name_local': 'tagalog'}, 'am': {'code': 'am', 'name': 'Amharic', 'bidi': False, 'name_local': 'Amharic'}, 'si': {'code': 'si', 'name': 'Sinhala', 'bidi': False, 'name_local': 'sinhala'}, 'ta': {'code': 'ta', 'name': 'Tamil', 'bidi': False, 'name_local': u'tamil'}}
SHOW_PROFILE_EMAIL = False
CELERYD_LOG_LEVEL = 1
DATABASE_USER = 'geonode'
TEMPLATES = [{'DIRS': ['/home/geonode/my_geonode/my_geonode/templates', '/home/geo/Envs/geonode/src/geonode/geonode/templates'], 'OPTIONS': {'debug': 1, 'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.tz', 'django.template.context_processors.request', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'django.contrib.auth.context_processors.auth', 'geonode.context_processors.resource_urls', 'geonode.geoserver.context_processors.geoserver_urls', 'geonode.themes.context_processors.custom_theme'], 'loaders': ['django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader']}, 'NAME': 'GeoNode Project Templates', 'BACKEND': 'django.template.backends.django.DjangoTemplates'}]
EMAIL_SSL_CERTFILE = None
CELERY_TASK_QUEUES = 
DEFAULT_WORKSPACE = 'geonode'
ASYNC_SIGNALS = False
LOCAL_GEOSERVER = {'source': {'url': 'http://geoportal.dummy.org/geoserver/wms', 'restUrl': '/gs/rest', 'ptype': 'gxp_wmscsource'}}
DEFAULT_TABLESPACE = ''
CELERY_ACKS_LATE = True
EMAIL_ENABLE = True
SESSION_COOKIE_AGE = 1209600
THEME_ACCOUNT_CONTACT_EMAIL = 'admin at example.com'
NOTIFICATION_ENABLED = True
LANGUAGES = 
CELERY_TASK_RESULT_EXPIRES = 43200
GEONODE_CLIENT_LAYER_PREVIEW_LIBRARY = 'geoext'
ABSOLUTE_URL_OVERRIDES = {}
OGC_SERVER_DEFAULT_PASSWORD = u'********************'
CACHE_MIDDLEWARE_SECONDS = 600
CSRF_COOKIE_HTTPONLY = False
TEST = False
EMAIL_HOST_USER = 'Geoportal dummy <geoportal-dummy-dontreply at cgiar.org>'
CASCADE_WORKSPACE = 'geonode'
CSRF_COOKIE_SECURE = False
CELERY_TRACK_STARTED = True
UPLOADER = {'SUPPORTED_CRS': ['EPSG:4326', 'EPSG:3785', 'EPSG:3857', 'EPSG:900913', 'EPSG:32647', 'EPSG:32736'], 'BACKEND': 'geonode.rest', 'OPTIONS': {'TIME_ENABLED': False, 'MOSAIC_ENABLED': False, 'GEOGIG_ENABLED': False}, 'SUPPORTED_EXT': ['.shp', '.csv', '.kml', '.kmz', '.json', '.geojson', '.tif', '.tiff', '.geotiff', '.gml', '.xml']}
LICENSES = {'ENABLED': True, 'DETAIL': 'above', 'METADATA': 'verbose'}
EMAIL_HOST_PASSWORD = u'********************'
PYCSW = {'CONFIGURATION': {'metadata:main': {'identification_fees': 'None', 'provider_url': 'http://geoportal.dummy.org/', 'identification_keywords': 'sdi, catalogue, discovery, metadata, GeoNode', 'contact_address': 'Mailing Address', 'identification_accessconstraints': 'None', 'contact_name': 'Lastname, Firstname', 'contact_stateorprovince': 'Administrative Area', 'contact_country': 'Country', 'contact_url': 'Contact URL', 'provider_name': 'Organization Name', 'contact_phone': '+xx-xxx-xxx-xxxx', 'contact_hours': 'Hours of Service', 'contact_role': 'pointOfContact', 'contact_email': 'Email Address', 'identification_title': 'GeoNode Catalogue', 'contact_postalcode': 'Zip or Postal Code', 'contact_city': 'City', 'identification_keywords_type': 'theme', 'identification_abstract': 'GeoNode is an open source platform that facilitates the creation, sharing, and collaborative use of geospatial data', 'contact_fax': '+xx-xxx-xxx-xxxx', 'contact_instructions': 'During hours of service. Off on weekends.', 'contact_position': 'Position Title'}, 'metadata:inspire': {'languages_supported': 'eng,gre', 'default_language': 'eng', 'temp_extent': 'YYYY-MM-DD/YYYY-MM-DD', 'conformity_service': 'notEvaluated', 'contact_email': 'Email Address', 'date': 'YYYY-MM-DD', 'contact_name': 'Organization Name', 'gemet_keywords': 'Utility and governmental services', 'enabled': 'true'}}}
CELERY_RESULT_SERIALIZER = 'json'
AWS_STORAGE_BUCKET_NAME = ''
FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
LOCAL_ROOT = '/home/geonode/my_geonode/my_geonode'
FILE_UPLOAD_HANDLERS = 
DEFAULT_CONTENT_TYPE = 'text/html'
DEBUG_STATIC = False
MONITORING_SERVICE_NAME = 'local-geonode'
SOCIALACCOUNT_PROVIDERS = {'linkedin_oauth2': {'SCOPE': ['r_emailaddress', 'r_basicprofile'], 'PROFILE_FIELDS': ['emailAddress', 'firstName', 'headline', 'id', 'industry', 'lastName', 'pictureUrl', 'positions', 'publicProfileUrl', 'location', 'specialties', 'summary']}, 'facebook': {'SCOPE': ['email', 'public_profile'], 'METHOD': 'oauth2', 'FIELDS': ['id', 'email', 'name', 'first_name', 'last_name', 'verified', 'locale', 'timezone', 'link', 'gender']}}
STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
USE_WORLDMAP = 0
SILENCED_SYSTEM_CHECKS = ['1_8.W001', 'fields.W340']
LOGGING_CONFIG = 'logging.config.dictConfig'
TEMPLATE_LOADERS = 
AUTO_GENERATE_AVATAR_SIZES = 
HAYSTACK_CONNECTIONS = {'default': {'ENGINE': 'haystack.backends.elasticsearch2_backend.Elasticsearch2SearchEngine', 'URL': 'http://127.0.0.1:9200/', 'INDEX_NAME': 'haystack'}}
GEONODE_INTERNAL_APPS = 
ACCOUNT_LOGIN_REDIRECT_URL = 'http://localhost:8000/'
EMAIL_TIMEOUT = None
SESSION_COOKIE_SECURE = False
GEONODE_CORE_APPS = 
CACHE_TIME = 0
AWS_ACCESS_KEY_ID = u'********************'
INSTALLED_APPS = 
THUMBNAIL_GENERATOR_DEFAULT_BG = 'http://a.tile.openstreetmap.org/{z}/{x}/{y}.png'
STATIC_ROOT = '/var/www/geonode/static/'
SECURE_HSTS_INCLUDE_SUBDOMAINS = True
GEONODE_APPS = 
SESSION_COOKIE_HTTPONLY = True
DATETIME_FORMAT = 'N j, Y, P'
USER_MESSAGES_ALLOW_MULTIPLE_RECIPIENTS = True
GEOTIFF_IO_BASE_URL = 'https://app.geotiff.io'
DATE_INPUT_FORMATS = 
ACCOUNT_LOGOUT_REDIRECT_URL = 'http://localhost:8000/'
TWITTER_CARD = 1
CSRF_COOKIE_NAME = 'csrftoken'
SESSION_SAVE_EVERY_REQUEST = False
NUMBER_GROUPING = 0
LOCALE_PATHS = 
GEONODE_ROOT = '/home/geo/Envs/geonode/src/geonode/geonode'
LOGGING = {'loggers': {'geonode': {'handlers': ['applogfile'], 'level': 'DEBUG'}, 'django': {'handlers': ['applogfile'], 'level': 'DEBUG'}, 'pycsw': {'handlers': ['applogfile'], 'level': 'DEBUG'}, 'owslib': {'handlers': ['applogfile'], 'level': 'DEBUG'}, 'gsconfig.catalog': {'handlers': ['applogfile'], 'level': 'DEBUG'}}, 'disable_existing_loggers': True, 'handlers': {'console': {'formatter': 'simple', 'class': 'logging.StreamHandler', 'level': 'DEBUG'}, 'applogfile': {'level': 'DEBUG', 'maxBytes': 15728640, 'backupCount': 10, 'class': 'logging.handlers.RotatingFileHandler', 'filename': '/tmp/GEONODE_APP.log'}, 'mail_admins': {'class': 'django.utils.log.AdminEmailHandler', 'filters': ['require_debug_false'], 'level': 'ERROR'}}, 'formatters': {'simple': {'format': '%(message)s'}, 'verbose': {'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'}}, 'version': 1, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}}}
INTEGRATION = False
OGP_URL = 'http://geodata.tufts.edu/solr/select'
USE_L10N = 1
CELERYD_LOG_FILE = None
EMAIL_HOST = 'dummysmtp4.cgiarad.org'
NLP_LOCATION_THRESHOLD = 1.0
REST_FRAMEWORK = {'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly']}
DATABASE_NAME = 'geonode'
MEDIA_URL = '/uploaded/'
RABBITMQ_SIGNALS_BROKER_URL = 'amqp://localhost:5672'
DJANGO_LIVE_TEST_SERVER_ADDRESS = 'localhost:8000'
MONITORING_ENABLED = True
DOWNLOAD_FORMATS_VECTOR = ['JPEG', 'PDF', 'PNG', 'Zipped Shapefile', 'GML 2.0', 'GML 3.1.1', 'CSV', 'Excel', 'GeoJSON', 'KML', 'View in Google Earth', 'Tiles', 'QGIS layer file (.qlr)', 'QGIS project file (.qgs)']
SKIP_PERMS_FILTER = False
GEONODE_CLIENT_HOOKSET = <geonode.client.hooksets.GeoExtHookSet object at 0x7f5c71e6f710>
TWITTER_SITE = '@GeoNode'
SLACK_ENABLED = False
PROJECT_NAME = 'my_geonode'
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
HAYSTACK_FACET_COUNTS = True
SECURE_SSL_REDIRECT = False
TIME_ZONE = 'UTC'
CORS_ORIGIN_ALLOW_ALL = True
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
DEFAULT_MAP_ZOOM = 0
TEMPLATE_CONTEXT_PROCESSORS = 
MAPBOX_ACCESS_TOKEN = u'********************'
S3_STATIC_ENABLED = False
PINAX_NOTIFICATIONS_LANGUAGE_MODEL = None
LANGUAGES_BIDI = 
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor'
CLIENT_RESULTS_LIMIT = 20
MODELTRANSLATION_DEFAULT_LANGUAGE = 'en'
GEOFENCE_SECURITY_ENABLED = True
SOCIALACCOUNT_ADAPTER = 'geonode.people.adapters.SocialAccountAdapter'
DATABASE_PASSWORD = u'********************'
SECURE_HSTS_SECONDS = 3600
TEST_NON_SERIALIZED_APPS = []
DEFAULT_CHARSET = 'utf-8'
OPENGRAPH_ENABLED = 1
CELERY_MAX_CACHED_RESULTS = 32768
CELERY_RESULT_PERSISTENT = False
ALLOWED_HOSTS = ['geoportal.dummy.org', 'geoportal.cgiarad.org', '172.30.1.167', 'localhost']
OGC_SERVER = {'default': {'BACKEND_WRITE_ENABLED': True, 'PASSWORD': u'********************', 'WPS_ENABLED': True, 'LOGIN_ENDPOINT': 'j_spring_oauth2_geonode_login', 'PUBLIC_LOCATION': 'http://geoportal.dummy.org/geoserver/', 'GEONODE_SECURITY_ENABLED': True, 'PRINT_NG_ENABLED': True, 'GEOGIG_DATASTORE_DIR': '', 'PG_GEOGIG': False, 'GEOFENCE_SECURITY_ENABLED': True, 'LOCATION': 'http://localhost/geoserver/', 'MAPFISH_PRINT_ENABLED': True, 'LOGOUT_ENDPOINT': 'j_spring_oauth2_geonode_logout', 'TIMEOUT': 10, 'WMST_ENABLED': False, 'DATASTORE': 'datastore', 'LOG_FILE': '/usr/share/geoserver/data/logs/geoserver.log', 'BACKEND': 'geonode.geoserver', 'GEOGIG_ENABLED': False, 'USER': 'admin'}}
DOWNLOAD_FORMATS_RASTER = ['JPEG', 'PDF', 'PNG', 'ArcGrid', 'GeoTIFF', 'Gtopo30', 'ImageMosaic', 'KML', 'View in Google Earth', 'Tiles', 'GML', 'GZIP', 'QGIS layer file (.qlr)', 'QGIS project file (.qgs)', 'Zipped All Files']
AUTH_EXEMPT_URLS = 
EMAIL_SUBJECT_PREFIX = '[Django] '
THOUSAND_SEPARATOR = ','
STATICFILES_FINDERS = 
S3_MEDIA_ENABLED = False
CELERY_WORKER_DISABLE_RATE_LIMITS = False
STATIC_URL = '/static/'
TIME_INPUT_FORMATS = 
SECURE_REDIRECT_EXEMPT = []
DATABASES = {'default': {'ENGINE': 'django.db.backends.postgresql_psycopg2', 'AUTOCOMMIT': True, 'ATOMIC_REQUESTS': False, 'NAME': 'geonode', 'CONN_MAX_AGE': 0, 'CONN_TOUT': 900, 'TIME_ZONE': 'UTC', 'PORT': '5432', 'HOST': 'localhost', 'USER': 'geonode', 'TEST': {'COLLATION': None, 'CHARSET': None, 'NAME': None, 'MIRROR': None}, 'PASSWORD': u'********************', 'OPTIONS': {}}, 'datastore': {'ENGINE': 'django.contrib.gis.db.backends.postgis', 'AUTOCOMMIT': True, 'ATOMIC_REQUESTS': False, 'NAME': 'geonode_data', 'CONN_MAX_AGE': 0, 'CONN_TOUT': 900, 'TIME_ZONE': 'UTC', 'PORT': '5432', 'HOST': 'localhost', 'USER': 'geonode', 'TEST': {'COLLATION': None, 'CHARSET': None, 'NAME': None, 'MIRROR': None}, 'PASSWORD': u'********************', 'OPTIONS': {}}}
LEAFLET_CONFIG = {'SRID': 3857, 'RESET_VIEW': False, 'TILES': [('Watercolor', 'http://{s}.tile.stamen.com/watercolor/{z}/{x}/{y}.png', 'Map tiles by <a href="http://stamen.com">Stamen Design</a>,          <a href="http://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>          — Map data ©          <a href="http://openstreetmap.org">OpenStreetMap</a> contributors,          <a href="http://creativecommons.org/licenses/by-sa/2.0/">          CC-BY-SA</a>'), ('Toner Lite', 'http://{s}.tile.stamen.com/toner-lite/{z}/{x}/{y}.png', 'Map tiles by <a href="http://stamen.com">Stamen Design</a>,          <a href="http://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>          — Map data ©          <a href="http://openstreetmap.org">OpenStreetMap</a> contributors,          <a href="http://creativecommons.org/licenses/by-sa/2.0/">          CC-BY-SA</a>')], 'PLUGINS': {u'forms': {u'css': <leaflet.utils.ListWithLazyItems object at 0x7f5c713e0810>, u'auto-include': False, u'js': <leaflet.utils.ListWithLazyItems object at 0x7f5c90a87e50>}, u'__default__': {u'css': <leaflet.utils.ListWithLazyItems object at 0x7f5c71221fd0>, u'js': <leaflet.utils.ListWithLazyItems object at 0x7f5c711ab110>}, u'ALL': {u'css': <leaflet.utils.ListWithLazyItems object at 0x7f5c8bda8910>, u'js': <leaflet.utils.ListWithLazyItems object at 0x7f5c71221390>}, 'leaflet-plugins': {'css': <leaflet.utils.ListWithLazyItems object at 0x7f5c71221d10>, 'auto-include': True, 'js': <leaflet.utils.ListWithLazyItems object at 0x7f5c711ab050>}, u'__is_normalized__': True}}
ACCOUNT_APPROVAL_REQUIRED = 0
DATABASE_URL = 'sqlite:////home/geo/Envs/geonode/src/geonode/geonode/development.db'
MODELTRANSLATION_LANGUAGES = ['en']
SLACK_WEBHOOK_URLS = ['https://hooks.slack.com/services/T000/B000/XX']
ALT_OSM_BASEMAPS = False
ACCOUNT_OPEN_SIGNUP = True
ACCOUNT_ADAPTER = 'geonode.people.adapters.LocalAccountAdapter'
SECURE_CONTENT_TYPE_NOSNIFF = True
SECRET_KEY = u'********************'
FILE_UPLOAD_TEMP_DIR = None
DEFAULT_MAP_CRS = 'EPSG:900913'
DATA_UPLOAD_MAX_NUMBER_FIELDS = 100000
MAP_CLIENT_USE_CROSS_ORIGIN_CREDENTIALS = 0
REDIS_SIGNALS_BROKER_URL = 'redis://localhost:6379/0'
SETTINGS_MODULE = 'my_geonode.settings'
AUTHENTICATION_BACKENDS = 
CELERY_ALWAYS_EAGER = True
MODIFY_TOPICCATEGORY = True
SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
LANGUAGE_COOKIE_DOMAIN = None
DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
SITEURL = 'http://geoportal.dummy.org/'
LANGUAGE_COOKIE_AGE = None
SOCIALACCOUNT_PROFILE_EXTRACTORS = {'linkedin_oauth2': 'geonode.people.profileextractors.LinkedInExtractor', 'facebook': 'geonode.people.profileextractors.FacebookExtractor'}
MANAGERS = []
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
TIME_FORMAT = 'P'
CACHE_MIDDLEWARE_ALIAS = 'default'
SERVICE_UPDATE_INTERVAL = 0
CSRF_COOKIE_PATH = '/'
NLP_LIBRARY_PATH = '/opt/MITIE/mitielib'
MONITORING_CONFIG = None
CELERYD_POOL_RESTARTS = True
PROJECT_ROOT = '/home/geo/Envs/geonode/src/geonode/geonode'
CACHE_MIDDLEWARE_KEY_PREFIX = u'********************'
RISKS = {'PDF_GENERATOR': {'BIN': '/usr/bin/wkhtml2pdf', 'ARGS': [], 'NAME': 'wkhtml2pdf'}, 'DEFAULT_LOCATION': None}
MAP_BASELAYERS = [{'source': {'url': 'http://geoportal.dummy.org/geoserver/wms', 'restUrl': '/gs/rest', 'ptype': 'gxp_wmscsource'}}, {'group': 'background', 'name': 'background', 'args': ['No background'], 'visibility': False, 'source': {'ptype': 'gxp_olsource'}, 'fixed': True, 'type': 'OpenLayers.Layer'}, {'source': {'ptype': 'gxp_olsource'}, 'wrapDateLine': True, 'fixed': True, 'attribution': '© UNESCO', 'name': 'background', 'title': 'UNESCO', 'group': 'background', 'args': ['UNESCO', 'http://en.unesco.org/tiles/${z}/${x}/${y}.png'], 'type': 'OpenLayers.Layer.XYZ', 'visibility': False}, {'source': {'ptype': 'gxp_olsource'}, 'wrapDateLine': True, 'fixed': True, 'attribution': '© UNESCO', 'name': 'background', 'title': 'UNESCO GEODATA', 'group': 'background', 'args': ['UNESCO GEODATA', 'http://en.unesco.org/tiles/geodata/${z}/${x}/${y}.png'], 'type': 'OpenLayers.Layer.XYZ', 'visibility': False}, {'source': {'ptype': 'gxp_olsource'}, 'wrapDateLine': True, 'fixed': True, 'attribution': "© <a href='http://www.openstreetmap.org/copyright'>OpenStreetMap</a>, Tiles courtesy of <a href='http://hot.openstreetmap.org/' target='_blank'>Humanitarian OpenStreetMap Team</a>", 'name': 'background', 'title': 'Humanitarian OpenStreetMap', 'group': 'background', 'args': ['Humanitarian OpenStreetMap', 'http://a.tile.openstreetmap.fr/hot/${z}/${x}/${y}.png'], 'type': 'OpenLayers.Layer.XYZ', 'visibility': False}, {'source': {'ptype': 'gxp_olsource'}, 'wrapDateLine': True, 'fixed': True, 'attribution': "© <a href='https://www.mapbox.com/about/maps/'>Mapbox</a> © <a href='http://www.openstreetmap.org/copyright'>OpenStreetMap</a> <a href='https://www.mapbox.com/feedback/' target='_blank'>Improve this map</a>", 'name': 'background', 'title': 'MapBox Satellite Streets', 'group': 'background', 'args': ['MapBox Satellite Streets', 'http://api.mapbox.com/styles/v1/mapbox/satellite-streets-v9/tiles/${z}/${x}/${y}?access_token=<MAPBOX_ACCESS_TOKEN>'], 'type': 'OpenLayers.Layer.XYZ', 'visibility': False}, {'source': {'ptype': 'gxp_olsource'}, 'wrapDateLine': True, 'fixed': True, 'attribution': "© <a href='https://www.mapbox.com/about/maps/'>Mapbox</a> © <a href='http://www.openstreetmap.org/copyright'>OpenStreetMap</a> <a href='https://www.mapbox.com/feedback/' target='_blank'>Improve this map</a>", 'name': 'background', 'title': 'MapBox Streets', 'group': 'background', 'args': ['MapBox Streets', 'http://api.mapbox.com/styles/v1/mapbox/streets-v9/tiles/${z}/${x}/${y}?access_token=<MAPBOX_ACCESS_TOKEN>'], 'type': 'OpenLayers.Layer.XYZ', 'visibility': False}, {'source': {'ptype': 'gxp_osmsource'}, 'wrapDateLine': True, 'attribution': "© <a href='http://osm.org/copyright'>OpenStreetMap</a> contributors", 'name': 'mapnik', 'title': 'OpenStreetMap', 'group': 'background', 'fixed': True, 'type': 'OpenLayers.Layer.OSM', 'visibility': True}]
LOGIN_REDIRECT_URL = '/'
GROUP_PRIVATE_RESOURCES = False
DATE_FORMAT = 'N j, Y'
LOCAL_SIGNALS_BROKER_URL = 'memory://'
MEDIA_ROOT = '/var/www/geonode/uploaded'
PROXY_URL = '/proxy/?url='
TEMPLATE_DEBUG = False
DEFAULT_FROM_EMAIL = 'Geoportal dummy <geoportal-dummy-dontreply at cgiar.org>'
FREETEXT_KEYWORDS_READONLY = u'********************'
GEONODE_EXCHANGE = <unbound Exchange default(direct)>
NOTIFICATIONS_MODULE = 'pinax.notifications'
SITE_ID = 1
ALLOWED_INCLUDE_ROOTS = 
API_LIMIT_PER_PAGE = u'********************'
SHORT_DATE_FORMAT = 'm/d/Y'
ACTSTREAM_SETTINGS = {'GFK_FETCH_DEPTH': 1, 'USE_JSONFIELD': True, 'FETCH_RELATIONS': True, 'USE_PREFETCH': False}
AWS_S3_BUCKET_DOMAIN = '.s3.amazonaws.com'
FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
DISPLAY_SOCIAL = 1
CSRF_COOKIE_AGE = 31449600
EMAIL_USE_SSL = False
INTERNAL_IPS = 
EMAIL_PORT = 25
GROUP_MANDATORY_RESOURCES = False
PASSWORD_HASHERS = u'********************'
ANONYMOUS_USER_ID = '-1'
DATETIME_INPUT_FORMATS = 

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.

--3b265e54-H--
Apache-Error: [file "mod_authz_core.c"] [line 809] [level 7] AH01626: authorization result of %s: %s
Apache-Error: [file "mod_authz_core.c"] [line 809] [level 7] AH01626: authorization result of %s: %s
Apache-Error: [file "mod_authz_core.c"] [line 809] [level 7] AH01626: authorization result of %s: %s
Apache-Error: [file "mod_authz_core.c"] [line 809] [level 7] AH01626: authorization result of %s: %s
Apache-Handler: wsgi-script
Stopwatch: 1557174426252120 221845 (- - -)
Stopwatch2: 1557174426252120 221845; combined=64, p1=39, p2=14, p3=2, p4=2, p5=6, sr=0, sw=1, l=0, gc=0
Response-Body-Transformed: Dechunked
Producer: ModSecurity for Apache/2.9.0 (http://www.modsecurity.org/).
Server: Apache/2.4.18 (Ubuntu)
Engine-Mode: "DETECTION_ONLY"

--3b265e54-J--
1,1388,"chinese_poly.shp","<Unknown ContentType>"
3,176,"chinese_poly.dbf","<Unknown ContentType>"
4,220,"chinese_poly.prj","<Unknown ContentType>"
5,1388,"chinese_poly.shp","<Unknown ContentType>"
6,108,"chinese_poly.shx","<Unknown ContentType>"
Total,3280

--3b265e54-Z--



More information about the geonode-devel mailing list