[ckan-dev] mounting CKAN at a non-root URL
Ian Ward
ian at excess.org
Tue Aug 25 14:10:06 UTC 2015
Try the root_path setting instead
http://docs.ckan.org/en/latest/maintaining/configuration.html?highlight=root_path
On Tue, Aug 25, 2015 at 2:23 AM, Giuliano Veronese - Provincia di
Pordenone <veronese at provincia.pordenone.it> wrote:
> In my case it does not work. Similarly Hilde, the value given to
> ckan.site_url it does not change anything.
> Giuliano
>
>
> Il 24/08/2015 16:19, Hildegard Gerlach ha scritto:
>
> Hello again,
>
> did anybody get it to work ? Setting ckan.site_url doesn't change anything
> in my case.
>
> I changed these 2 files:
>
> - Apache configuration file ckan.conf
> before:
> ProxyPass / http://localhost:5000/ retry=1 acquire=3000
> timeout=600 Keepalive=On
> ProxyPassReverse / http://localhost:5000/
> after:
> ProxyPass /ckan http://localhost:5000/ retry=1 acquire=3000
> timeout=600 Keepalive=On
> ProxyPassReverse /ckan http://localhost:5000/
>
> - production.ini
> before:
> ckan.site_url = http://localhost/
> after:
> ckan.site_url = http://localhost/ckan/
>
> I can access the site on /localhost/ckan, but nothing is found, not even the
> css
>
> I would need to add this to my ckan.conf, but for everything (e.g. /about
> etc)
> ProxyPass /fanstatic/ http://localhost:5000/fanstatic/
> ProxyPassReverse /fanstatic/ http://localhost:5000/fanstatic/
>
> data-site-root never changes, it doesn't depend on what value for
> ckan.site_url I am setting. It is still like that
> <body data-site-root="http://localhost/"
> data-locale-root="http://localhost/" >
>
> and also setting different values for ckan.site_url doesn't seem to make
> any difference.
>
> Thanks
>
> Hilde
>
>
>
> On 8/17/2015 5:13 PM, Armin Retterath wrote:
>
> the solution maybe to define the proxy for https and http directly in the
> ini file? or is this a problem of debian 8?
>
> i solved the issues by editing
> https://github.com/ckan/ckanext-geoview/blob/master/ckanext/geoview/controllers/service_proxy.py
> and
> https://github.com/ckan/ckan/blob/master/ckanext/resourceproxy/controller.py
> defining the 'proxies' variable and adding this variable to each call to the
> requests function. but this is only a workaround i think ;-)
>
> best regards from germany
> armin
>
> 2015-08-17 14:45 GMT+02:00 Armin Retterath <armin.retterath at gmail.com>:
>>
>> hi nigel,
>>
>> i deployed the system with the use of nginx - now the first problem
>> disapears, but the other problem occurs:
>> the service_proxy script don't care about the proxy which defined in the
>> /etc/environment :-( .
>> is there another option to set an env var in the application (proxy and
>> port?) with running paster the system proxy and port is recognized !
>>
>>
>> http://opendata.geoportal.rlp.de/dataset/denkmaldaten-gdke/resource/aa71be28-0ff6-4454-8203-2f0683d1a158
>>
>> thanx in advance
>>
>> armin
>>
>> 2015-08-17 13:22 GMT+02:00 Armin Retterath <armin.retterath at gmail.com>:
>>>
>>> hi nigel,
>>>
>>> i had the same problem as giuiliano and set the right ckan.site_url - the
>>> problem is maybe the apache mod_proxy (reverse proxy). i defined the
>>> mod_proxy on the localhost server of ckan to serve ckan at port 80. on the
>>> reverse proxy in the www, i did the same to publish my ckan installation.
>>> the problem now is, that the 2 different mod_proxy make trouble - they
>>> rewrite urls, so that some links are false.
>>> for example see: http://opendata.geoportal.rlp.de/dataset
>>> in chromiums developer tools there is following error:
>>>
>>> XMLHttpRequest cannot load
>>> http://opendata.geoportal.rlp.de%2C%20opendata.geoportal.rlp.de/api/i18n/de.
>>> No 'Access-Control-Allow-Origin' header is present on the requested
>>> resource. Origin 'http://opendata.geoportal.rlp.de' is therefore not allowed
>>> access.
>>> (cors list is configured in development.ini and the application run
>>> without any errors on http://localhost:80/ !)
>>>
>>> Firebug give none error!
>>>
>>> maybe there is a possible option for mod_proxy not to rewrite
>>> http://opendata.geoportal.rlp.de/api/i18n/de to
>>> http://opendata.geoportal.rlp.de%2C%20opendata.geoportal.rlp.de/api/i18n/de
>>> - which is urldecoded: http://opendata.geoportal.rlp.de,
>>> opendata.geoportal.rlp.de/api/i18n/de :-( .
>>> another option maybe to allow the paster serve listening on foreign ip's.
>>> default it only listen on localhost!
>>> did someone know how to alter this behaviour?
>>>
>>> thanx in advance,
>>>
>>> armin
>>>
>>>
>>> 2015-08-15 5:20 GMT+02:00 Nigel Babu <nigel at nigelb.me>:
>>>>
>>>> To everyone on this thread, the problem you're all hitting is the same.
>>>> if you want your ckan site on somedomain.com/ckan, you need to set `site_url
>>>> = http://somedomain.com/ckan`. Giuiliano, I notice that your site_url isn't
>>>> set correctly. If you have set it correctly in the config, perhaps you need
>>>> to restart Apache for the setting to take effect.
>>>>
>>>> --
>>>> nigelb
>>>>
>>>>
>>>> On Fri, Aug 14, 2015, at 08:33 PM, Hildegard Gerlach wrote:
>>>>
>>>> Hello,
>>>>
>>>> we also would like to run CKAN at a non-root URL. I think we have a
>>>> similar configuration as Giuliano.
>>>> We are using supervisord to run Ckan with the paster command, but I
>>>> don't think this makes any difference to the problem.
>>>>
>>>> ---------------------------- extract of superisord.conf
>>>> [program:ckan]
>>>> command=/Ckan/ckan_home/ckan_env/bin/paster serve
>>>> /Ckan/ckan_home/ckan_env/src/ckan/production.ini
>>>> user=ckan
>>>> ________________________________
>>>> and ckan.conf
>>>>
>>>> ProxyPass / http://localhost:5000/ retry=1 acquire=3000
>>>> timeout=600 Keepalive=On
>>>> ProxyPassReverse / http://localhost:5000/
>>>>
>>>> I tried what has been described in this thread, but I didn't succeed to
>>>> get it working as it should.
>>>> It is also not clear to me where data-site-root can be configured.
>>>> Changing it in base.html doesn't work.
>>>>
>>>> Would it be possible to get a documentation how to install (or move)
>>>> Ckan on a non-root URL ? It would be appreciated.
>>>>
>>>> Thanx in advance
>>>>
>>>> Hilde
>>>>
>>>> On 8/14/2015 11:08 AM, Armin Retterath wrote:
>>>>
>>>> hello together,
>>>> i now got another subdomain:
>>>> opendata.geoportal.rlp.de
>>>> but the viewers are not shown any longer?????
>>>> on the real server the viewer are shown without any problems.
>>>> on 127.0.0.1 apache proxy_http get port 5000 to 80 and on the front
>>>> server the same module is used to transfer the requests so the ckan server
>>>> ???
>>>> thanx in advance
>>>> armin
>>>>
>>>> 2015-08-14 9:40 GMT+02:00 Giuliano Veronese - Provincia di Pordenone
>>>> <veronese at provincia.pordenone.it>:
>>>>
>>>> Hello Nigel,
>>>> thank you for your answer.
>>>> I can not link you the site because it is offline (virtual machine for
>>>> experiments).
>>>>
>>>> This is the output you asked:
>>>> {"Help": "Return a dictionary with information about the site's
>>>> configuration.", "Success": true, "result": {"ckan_version": "2.1a",
>>>> "site_url": "http: //catalog.data .gov "," site_description ":" ","
>>>> SITE_TITLE ":" Data.gov "," error_emails_to ":"
>>>> catalog-notification at googlegroups.com "," locale_default ":" en ","
>>>> extensions ": [" geodatagov "," datagov_harvest ","
>>>> geodatagov_geoportal_harvester "," z3950_harvester "," arcgis_harvester ","
>>>> waf_harvester_collection "," geodatagov_csw_harvester ","
>>>> geodatagov_doc_harvester "," geodatagov_waf_harvester "," spatial_metadata
>>>> "," spatial_query "," resource_proxy "," spatial_harvest_metadata_api ",
>>>> "recline_preview", "pdf_preview", "googleanalytics", "SAML2", "datajson",
>>>> "datajson_harvest", "archiver", "qa", "ckan_harvester", "report",
>>>> "broken_link_report", "datagovtheme", "extlink "]}}
>>>>
>>>> I send you the contents of ckan file
>>>> (/etc/apache2/sites-availables/ckan):
>>>>
>>>> <VirtualHost *:80>
>>>> ServerAdmin webmaster at localhost
>>>> DocumentRoot /var/www
>>>>
>>>> ProxyPass /geoserver http://localhost:8090/geoserver
>>>> ProxyPassReverse /geoserver http://localhost:8090/geoserver
>>>> ProxyPass /mapstore http://localhost:8081/mapstore
>>>> ProxyPassReverse /mapstore http://localhost:8081/mapstore
>>>> ProxyPass /mapstore ajp://localhost:8013/mapstore
>>>> ProxyPassReverse /mapstore ajp://localhost:8013/mapstore
>>>> ProxyPass /geostore ajp://localhost:8013/geostore
>>>> ProxyPassReverse /geostore ajp://localhost:8013/geostore
>>>> ProxyPass /http_proxy ajp://localhost:8013/http_proxy
>>>> ProxyPassReverse /http_proxy ajp://localhost:8013/http_proxy
>>>> ProxyPass /geonetwork http://localhost:8082/geonetwork
>>>> ProxyPassReverse /geonetwork http://localhost:8082/geonetwork
>>>> ProxyPass /ckan http://localhost:5000
>>>> ProxyPassReverse /ckan http://localhost:5000
>>>>
>>>> <Directory />
>>>> Options FollowSymLinks
>>>> AllowOverride None
>>>> </Directory>
>>>>
>>>> <Directory /var/www/>
>>>> Options Indexes FollowSymLinks MultiViews
>>>> AllowOverride None
>>>> Order allow,deny
>>>> allow from all
>>>> </Directory>
>>>>
>>>>
>>>> ### Abilitare FCGI http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html
>>>>
>>>> # FcgidMaxRequestsPerProcess should be <= PHP_FCGI_MAX_REQUESTS
>>>> # The example PHP wrapper script overrides the default PHP setting.
>>>> FcgidMaxRequestsPerProcess 10000
>>>>
>>>> # Uncomment the following line if cgi.fix_pathinfo is set to 1 in
>>>> # php.ini:
>>>> # FcgidFixPathinfo 1
>>>>
>>>> Alias /phpapp/ /usr/local/phpapp/
>>>> <Location /phpapp/>
>>>> AddHandler fcgid-script .php
>>>> Options +ExecCGI
>>>> FcgidWrapper /usr/local/bin/php-wrapper .php
>>>>
>>>> # Customize the next two directives for your requirements.
>>>> Configurata sopra
>>>> # Order allow,deny
>>>> # Allow from all
>>>> </Location>
>>>>
>>>> ### fine inserimento FCGI
>>>>
>>>>
>>>> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
>>>> <Directory /usr/lib/cgi-bin>
>>>> AllowOverride None
>>>> Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
>>>> Order allow,deny
>>>> Allow from all
>>>> </Directory>
>>>>
>>>> ErrorLog ${APACHE_LOG_DIR}/error.log
>>>>
>>>> # Possible values include: debug, info, notice, warn, error,
>>>> crit,
>>>> # alert, emerg.
>>>>
>>>> LogLevel warn
>>>> CustomLog ${APACHE_LOG_DIR}/access.log combined
>>>>
>>>> </VirtualHost>
>>>>
>>>> And finally, the row that contains "data-site-root" and
>>>> "data-locale-root" in source of the page:
>>>>
>>>> <body data-site-root="http://localhost:7000/"
>>>> data-locale-root="http://localhost:7000/" >
>>>>
>>>> I tried to manually edit the file "base.html" and to change the
>>>> 'data-site-root' and 'data-locale-root', but did not work and I have
>>>> restored the original version:
>>>> ORIGINAL: <body{% block bodytag %} data-site-root="{{ h.url('/',
>>>> locale='default', qualified=true) }}" data-locale-root="{{ h.url('/',
>>>> qualified=true) }}" {% endblock %}>
>>>> RESULT: <body data-site-root="http://localhost:7000/"
>>>> data-locale-root="http://localhost:7000/" >
>>>> CHANGED (but now restored): <body{% block bodytag %} data-site-root="{{
>>>> h.url('/ckan', locale='default', qualified=true) }}" data-locale-root="{{
>>>> h.url('/ckan', qualified=true) }}" {% endblock %}>
>>>> RESULT: <body data-site-root="http://localhost:7000/ckan"
>>>> data-locale-root="http://localhost:7000/ckan" > (do not work)
>>>>
>>>> Note: that "localhost:7000" is only redirection used by VirtualBox ( the
>>>> server CKAN runs, on the virtual machine, on port 5000)
>>>> Thanks for your help.
>>>>
>>>> Giuliano
>>>>
>>>>
>>>>
>>>> Il 13/08/2015 16:23, Nigel Babu ha scritto:
>>>>
>>>> Can you link me to the site? If not, please paste the output of
>>>> /api/action/status_show. In your case, it might be
>>>> ckan/api/action/status_show.
>>>>
>>>> Can you also view the source of the page and paste the <body> tag? I'd
>>>> like to see the values of data-site-root and data-locale-root.
>>>>
>>>>
>>>> _______________________________________________
>>>> ckan-dev mailing list
>>>> ckan-dev at lists.okfn.org
>>>> https://lists.okfn.org/mailman/listinfo/ckan-dev
>>>> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> ckan-dev mailing list
>>>> ckan-dev at lists.okfn.org https://lists.okfn.org/mailman/listinfo/ckan-dev
>>>> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>>>>
>>>>
>>>> _______________________________________________
>>>> ckan-dev mailing list
>>>> ckan-dev at lists.okfn.org
>>>> https://lists.okfn.org/mailman/listinfo/ckan-dev
>>>> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> ckan-dev mailing list
>>>> ckan-dev at lists.okfn.org
>>>> https://lists.okfn.org/mailman/listinfo/ckan-dev
>>>> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>>>>
>>>
>>
>
>
>
> _______________________________________________
> ckan-dev mailing list
> ckan-dev at lists.okfn.org
> https://lists.okfn.org/mailman/listinfo/ckan-dev
> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>
>
>
>
> _______________________________________________
> ckan-dev mailing list
> ckan-dev at lists.okfn.org
> https://lists.okfn.org/mailman/listinfo/ckan-dev
> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>
>
>
> _______________________________________________
> ckan-dev mailing list
> ckan-dev at lists.okfn.org
> https://lists.okfn.org/mailman/listinfo/ckan-dev
> Unsubscribe: https://lists.okfn.org/mailman/options/ckan-dev
>
More information about the ckan-dev
mailing list