[ckan-dev] FileStore integration with Apache does not work
User66
user66 at arcor.de
Tue Apr 2 12:54:09 UTC 2013
Hi,
just found out that using a "sub-directory" as site_url is the problem.
I have set
WSGIScriptAlias /ckan /opt/ckan/pyenv/src/ckan/bin/domain.de.py
in order to reach CKAN at http://domain.de/ckan .
So far this works, but there seems to be a problem with reaching the API. FileStore does not work and in addition I found out that the Recline Data Viewer also does not work. I have played with setting ckan.site_url and ckan.api_url but had no success.
When I switch to use a complete virtual host by
WSGIScriptAlias / /opt/ckan/pyenv/src/ckan/bin/domain.de.py
FileStore and the recline data Viewer work !!
The question is now if and how the non-Root URL described at http://docs.ckan.org/en/latest/deployment.html really works. There must be more config changes in order to fully integrate such a non-Root URL.
Cheers
Ralf
----------------ursprüngliche Nachricht-----------------
Von: "User66" user66 at arcor.de
An: "CKAN Development Discussions" ckan-dev at lists.okfn.org
Datum: Tue, 2 Apr 2013 11:58:12 +0200
-------------------------------------------------
>> Are you using two different CKAN ini files, one with the development
>> server and one with Apache? Is there a difference between the
>> configuration files?
>
> No, the setup is exactly the same. No config difference. I just switch between the
> built-in server and Apache (you can even run both at the same time, but the
> "data/sessions" files must be deleted before you use the other one, since there
> is in deed a permission problem else).
>
> Config:
> ckan.plugins = stats json_preview recline_preview synchronous_search
> ckan.site_url = http://domain.de/ckan
> ofs.impl = pairtree
> ofs.storage_dir = /opt/ckan/pyenv/src/ckan/data/uploads
> ckanext.storage.max_content_length = 1000000
>
>> Is this a UNIX permissions problem? When you run the development server
>> that is run as your unix user, but when you run Apache then CKAN runs as
>> apache's unix user (www-data on ubuntu).
>
> This was always kept in mind. Should not be the problem.
>
> # la /opt/ckan/pyenv/src/ckan/data
> drwxrwxr-x 4 ckan www 4096 2. Apr 08:56 sessions
> drwxrwxr-x 3 ckan www 4096 2. Apr 08:52 uploads
>
> If wrong permissions would be the reason I would in deed assume that upload does
> not work but to get an error in the web interface. But the "Upload" link does even
> not appear at all.
>
>>> So, I assume that Apache does not have the right path to the API. The
>>> only Apache config so far is
>>
>> This seems unlikely. Try visiting a url like /api/3/action/package_list
>> when running CKAN in Apache, and see if you get a response from CKAN's
>> action API.
>
> That seems to work, the output is:
> {"help": "Return a list of the names of the site's datasets (packages).\n\n
> :rtype: list of strings\n\n ", "success": true, "result": ["test"]}
>
>> I think the problem is probably something to do with your FileStore
>> setup when running under Apache.
>
> Yes. I would need to understand and debug how FileStore and the helper
> applications integrate into the web interface and under which circumstances
> the "Upload" link does appear or even not.
>
> Thanks
> Ralf
>
>
>
> ----------------ursprüngliche Nachricht-----------------
> Von: "Sean Hammond" sean.hammond at okfn.org
> An: ckan-dev at lists.okfn.org
> Datum: Tue, 2 Apr 2013 11:01:17 +0200
> -------------------------------------------------
>
>
>>> I did following test:
>>>
>>> 1) Start the paster web server.
>>> 2) Add a resource to a dataset and upload an image to it (via the port 5000 web
>>> service)
>>> 3) Stop the paster web server (and delete the session files in
>>> "pyenv/src/ckan/data/sessions" due to potential permission conflict
>>> ckan
>>> user vs. www user)
>>> 4) Access CKAN via Apache web service. Result: The image is still
>>> available
>>> via the Apache web service. But the "Upload" button/link does not appear!
>>>
>>> So, the general integration to the storage area works, but to some
>>> extent the Phython API is not fully working with Apache. Is there
>>> something to consider regarding the API path described at
>>> http://docs.ckan.org/en/latest/filestore-api.html ? Since after
>>> initial Apache integration I got errors like
>>
>> File storage doesn't work any differently in the development server than
>> with apache.
>>
>> Are you using two different CKAN ini files, one with the development
>> server and one with Apache? Is there a difference between the
>> configuration files?
>>
>> Is this a UNIX permissions problem? When you run the development server
>> that is run as your unix user, but when you run Apache then CKAN runs as
>> apache's unix user (www-data on ubuntu).
>>
>>> So, I assume that Apache does not have the right path to the API. The
>>> only Apache config so far is
>>
>> This seems unlikely. Try visiting a url like /api/3/action/package_list
>> when running CKAN in Apache, and see if you get a response from CKAN's
>> action API.
>>
>> I think the problem is probably something to do with your FileStore
>> setup when running under Apache.
>>
>> _______________________________________________
>> ckan-dev mailing list
>> ckan-dev at lists.okfn.org
>> http://lists.okfn.org/mailman/listinfo/ckan-dev
>> Unsubscribe: http://lists.okfn.org/mailman/options/ckan-dev
>>
>
>
>
> _______________________________________________
> ckan-dev mailing list
> ckan-dev at lists.okfn.org
> http://lists.okfn.org/mailman/listinfo/ckan-dev
> Unsubscribe: http://lists.okfn.org/mailman/options/ckan-dev
>
More information about the ckan-dev
mailing list