[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
Thu May 16 03:44:07 PDT 2019


Hello Alessio,

thank you very much for your efforts. I will give it a try.

Just 10 minutes ago I set up a local VM with 2.10 rc5 and I can confirm 
that the layer uploads works perfectly for me with the included 
geoserver 2.14.2.

(What I noted is that the admin link to geoserver from within geonode 
didn't work in DEV mode (paver start): The url it points to is 
"http://localhost:8000/gs/" but I get a 404 (see output below). This 
isn't a big problem because I don't intend to use DEV mode at all. I 
also didn't examine this issue yet.)

Thanks again, I will try to fix my 2.8.1 version and keep you informed

Regards,

Michael

---------

output from geonode after click on geoserver link in admin menu:

Page not found (404)
Request Method:     GET
Request URL:     http://localhost:8000/gs/

Using the URLconf defined in geonode.urls, Django tried these URL 
patterns, in this order:

     ^$ [name='home']
     ^help/$ [name='help']
     ^developer/$ [name='developer']
     ^about/$ [name='about']
     ^privacy_cookies/$ [name='privacy-cookies']
     ^layers/
     ^maps/
     ^catalogue/
     ^data.json$ [name='data_json']
     ^ident.json$ [name='ident_json']
     ^h_keywords_api$ [name='h_keywords_api']
     ^search/$ [name='search']
     ^account/
     ^invitations/
     ^people/
     ^avatar/
     ^comments/
     ^ratings/
     ^activity/
     ^announcements/
     ^messages/
     ^social/
     ^security/
     ^account/ajax_login$ [name='account_ajax_login']
     ^account/ajax_lookup$ [name='account_ajax_lookup']
^account/moderation_sent/(?P<inactive_user>[^/]*)$ 
[name='moderator_contacted']
     ^lang\.js$ [name='lang']
     ^jsi18n/$ [name='javascript-catalog']
     ^sitemap\.xml$ [name='sitemap']
     ^robots\.txt$ [name='robots']
     ^autocomplete/
     ^groups/
     ^documents/
     ^services/
     ^o/
     ^api/o/v4/tokeninfo [name='tokeninfo']
     ^api/o/v4/userinfo [name='userinfo']
     ^api/roles [name='roles']
     ^api/adminRole [name='adminRole']
     ^api/users [name='users']
     ^(?P<api_name>api)/$ [name='api_api_top_level']
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^(?P<api_name>api)/
     ^en/
     ^i18n/
     ^showmetadata/
     ^upload/
     ^capabilities/layer/(?P<layerid>\d+)/$ [name='capabilities_layer']
     ^capabilities/map/(?P<mapid>\d+)/$ [name='capabilities_map']
     ^capabilities/user/(?P<user>[\w. at +-]+)/$ [name='capabilities_user']
     ^capabilities/category/(?P<category>\w+)/$ 
[name='capabilities_category']
     ^gs/ ^rest/stores/(?P<store_type>\w+)/$ [name='stores']
     ^gs/ ^rest/styles
     ^gs/ ^rest/workspaces
     ^gs/ ^rest/workspaces/(?P<workspace>\w+)/styles
     ^gs/ ^rest/layers
     ^gs/ ^rest/imports
     ^gs/ ^rest/sldservice
     ^gs/ ^ows [name='ows_endpoint']
     ^gs/ ^gwc [name='gwc_endpoint']
     ^gs/ ^wms [name='wms_endpoint']
     ^gs/ ^wfs [name='wfs_endpoint']
     ^gs/ ^wcs [name='wcs_endpoint']
     ^gs/ ^wps [name='wps_endpoint']
     ^gs/ ^pdf [name='pdf_endpoint']
     ^gs/ ^(?P<workspace>[^/]*)/(?P<layername>[^/]*)/ows
     ^gs/ ^(?P<workspace>[^/]*)/(?P<layername>[^/]*)/wms
     ^gs/ ^(?P<workspace>[^/]*)/(?P<layername>[^/]*)/wfs
     ^gs/ ^(?P<workspace>[^/]*)/(?P<layername>[^/]*)/wcs
     ^gs/ ^updatelayers/$ [name='updatelayers']
     ^gs/ ^(?P<layername>[^/]*)/style$ [name='layer_style']
     ^gs/ ^(?P<layername>[^/]*)/style/upload$ [name='layer_style_upload']
     ^gs/ ^(?P<layername>[^/]*)/style/manage$ [name='layer_style_manage']
     ^gs/ ^(?P<layername>[^/]*)/edit-check?$ [name='feature_edit_check']
     ^gs/ ^(?P<layername>[^/]*)/style-check?$ [name='style_edit_check']
     ^gs/ ^acls/?$ [name='layer_acls']
     ^gs/ ^resolve_user/?$ [name='layer_resolve_user']
     ^gs/ ^download$ [name='layer_batch_download']
     ^gs/ ^online/?$ [name='server_online']
     ^notifications/
     ^ ^api/ows_endpoints/
     ^proxy/ [name='proxy']
     ^download/(?P<resourceid>[^/]*)$ [name='download']
     ^static\/(?P<path>.*)$
     ^uploaded\/(?P<path>.*)$
     ^featured/(?P<site>[A-Za-z0-9_\-]+)/$
     ^featured/(?P<site>[A-Za-z0-9_\-]+)/info$

The current path, gs/, didn't match any of these.

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 
404 page.




On 16/05/2019 11:49, Alessio Fabiani wrote:
> Dear Michael,
> fwi I did a PR [1] backporting most of the fixes currently available 
> on 2.10
>
> Once this will be merged, you will need to update the GeoNode 2.8 code 
> base accordingly and run again migrations and collectstatic commands.
>
> [1] - https://github.com/GeoNode/geonode/pull/4402
>
> Il giorno lun 6 mag 2019 alle ore 22:36 Michael Härtel 
> <haerta at haerta.de <mailto:haerta at haerta.de>> ha scritto:
>
>     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.
>>
>
>
> -- 
>
> ==
>
> 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/20190516/11e31ad3/attachment-0001.html>


More information about the geonode-devel mailing list