Error getting keystone related informations when running keystone in httpd
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Dashboard (Horizon) |
Fix Released
|
Undecided
|
Liyingjun | ||
Icehouse |
Fix Released
|
Undecided
|
Deliang Fan |
Bug Description
1. Need to deploy keystone on apache: http://
2. Update keystone endpoints to, http://
3. Edit openstack_
4. Visit dashboard,
* Error on dashboard: `Error: Unable to retrieve project list.`
* Error in log:
Not Found: Not Found (HTTP 404)
Traceback (most recent call last):
File "/opt/stack/
projects, has_more = api.keystone.
File "/opt/stack/
tenants = manager.list(limit, marker)
File "/opt/stack/
tenant_list = self._list(
File "/opt/stack/
resp, body = self.client.
File "/opt/stack/
return self._cs_
File "/opt/stack/
**kwargs)
File "/opt/stack/
resp = super(HTTPClient, self).request(url, method, **kwargs)
File "/opt/stack/
return self.session.
File "/opt/stack/
raise exceptions.
NotFound: Not Found (HTTP 404)
But using the keystoneclient command line everything works fine..
$ keystone tenant-list
+------
| id | name | enabled |
+------
| 9542f4d212064b9
| 5e317523a51745d
| 70058501677e4c2
| 246ef2315135478
+------
Changed in horizon: | |
assignee: | nobody → Liyingjun (liyingjun) |
Changed in horizon: | |
milestone: | none → juno-1 |
status: | Fix Committed → Fix Released |
Changed in horizon: | |
milestone: | juno-1 → 2014.2 |
_get_endpoint_url in openstack_ dashboards/ api/keystone. py is the source of the problem.
the url is generated by the following codes:
bits = urlparse. urlparse( url) (bits.scheme, bits.netloc))
root = "://".join(
url = "%s/v%s" % (root, VERSIONS.active)
this will generate the url like: http:// 127.0.0. 1/v3, but if keystone is running on apache, the right url should be: http:// 127.0.0. 1/keystone/ main/v3