Ticket #1040 (closed defect: fixed)
File system mounted
Reported by: | dread | Owned by: | thejimmyg |
---|---|---|---|
Priority: | blocker | Milestone: | ckan-v1.4 |
Component: | ckan | Keywords: | |
Cc: | nils.toedtmann | Repository: | ckan |
Theme: | none |
Description
Public file path code adds a trailing , and thus adds / as a static file app in the Pylons middleware cascade.
Change History
comment:3 Changed 2 years ago by dread
- Repository set to ckan
- Theme set to none
The problem arises when you do two things together:
- Have code like this in a CKAN extension's plugin.py:
config['extra_public_paths'] = ','.join([our_public_dir, config.get('extra_public_paths', '')])
which will have a trailing blank value (unless you set extra_public_paths in the config file)
extra_public_paths=['/some/path/', '']
- Run CKAN with this code:
extra_public_paths = config.get('extra_public_paths') if extra_public_paths: static_parsers = [StaticURLParser(public_path) \ for public_path in \ extra_public_paths.split(',')] + static_parsers
Introduced in #340 https://github.com/okfn/ckan/commit/0593c3e5050882a9dbf54fb6c263f4a2f1de2097#ckan/config/middleware.py in CKAN 1.0.2 This was made safer in https://github.com/okfn/ckan/commit/e0d5f02168116a18a7aeb7b058e4160bbd402a02#ckan/config/middleware.py for CKAN 1.3.2 (it ignores blank paths)
comment:5 Changed 2 years ago by dread
Here are all the CKAN instances potentially involved in this issue:
ckan.net / DGU
These suffered this problem briefly and were fixed 15/3/11
opengov_es http://opengov.es/ 1.2
This does not have a theme extension. Is not serving files from root.
nosdonnees_fr http://www.nosdonnees.fr/ 1.3.1a
This does have a theme extension but does not seem to have a trailing blank public path since it is not serving files from root.
Fixed by James in 904f1f36a672 for 1.3.2