blob: a4ab5ddc0b90cac33f15a64707d9a63e70eda455 [file] [log] [blame]
.. Licensed under the Apache License, Version 2.0 (the "License"); you may not
.. use this file except in compliance with the License. You may obtain a copy of
.. the License at
..
.. http://www.apache.org/licenses/LICENSE-2.0
..
.. Unless required by applicable law or agreed to in writing, software
.. distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
.. WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
.. License for the specific language governing permissions and limitations under
.. the License.
.. highlight:: ini
======================
HTTP Resource Handlers
======================
.. _config/httpd_global_handlers:
Global HTTP Handlers
====================
.. config:section:: httpd_global_handlers :: Global HTTP Handlers
These HTTP resources are provided for CouchDB server root level.
.. config:option:: /
::
[httpd_global_handlers]
/ = {couch_httpd_misc_handlers, handle_welcome_req, <<"Welcome">>}
.. config:option:: favicon.ico
The favicon handler looks for `favicon.ico` file within specified
directory::
[httpd_global_handlers]
favicon.ico = {couch_httpd_misc_handlers, handle_favicon_req, "/usr/share/couchdb/www"}
.. config:option:: _active_tasks
::
[httpd_global_handlers]
_active_tasks = {couch_httpd_misc_handlers, handle_task_status_req}
.. config:option:: _all_dbs
Provides a list of all server's databases::
[httpd_global_handlers]
_all_dbs = {couch_httpd_misc_handlers, handle_all_dbs_req}
.. note::
Sometimes you don't want to disclose database names for everyone,
but you also don't like/want/able to set up any proxies in front of
CouchDB. Removing this handler disables ``_all_dbs`` resource and
there will be no way to get list of available databases.
The same also is true for other resource handlers.
.. config:option:: _config
Provides resource to work with CouchDB config
:ref:`remotely <api/config>`. Any config changes that was made via HTTP
API are applied automatically on fly and doesn't requires server
instance to be restarted::
[httpd_global_handlers]
_config = {couch_httpd_misc_handlers, handle_config_req}
.. config:option:: _replicate
Provides an API to run
:ref:`temporary replications <api/server/replicate>`::
[httpd_global_handlers]
_replicate = {couch_replicator_httpd, handle_req}
.. config:option:: _restart
::
[httpd_global_handlers]
_restart = {couch_httpd_misc_handlers, handle_restart_req}
.. config:option:: _session
Provides a resource with information about the current user's session::
[httpd_global_handlers]
_session = {couch_httpd_auth, handle_session_req}
.. config:option:: _stats
::
[httpd_global_handlers]
_stats = {couch_httpd_stats_handlers, handle_stats_req}
.. config:option:: _utils
The :ref:`_utils <api/server/utils>` handler serves `Fauxton`'s web
administration page::
[httpd_global_handlers]
_utils = {couch_httpd_misc_handlers, handle_utils_dir_req, "/usr/share/couchdb/www"}
In similar way, you may set up custom handler to let CouchDB serve any
static files.
.. config:option:: _uuids
Provides a resource to get UUIDs generated by CouchDB::
[httpd_global_handlers]
_uuids = {couch_httpd_misc_handlers, handle_uuids_req}
This is useful when your client environment isn't capable of providing
truly random IDs (web browsers e.g.).
.. _config/httpd_db_handlers:
Database HTTP Handlers
======================
.. config:section:: httpd_db_handlers :: Database HTTP Handlers
These HTTP resources are available on every CouchDB database.
.. config:option:: _all_docs
::
[httpd_db_handlers]
_all_docs = {couch_mrview_http, handle_all_docs_req}
.. config:option:: _local_docs
::
[httpd_db_handlers]
_local_docs = {couch_mrview_http, handle_local_docs_req}
.. config:option:: _design_docs
::
[httpd_db_handlers]
_design_docs = {couch_mrview_http, handle_design_docs_req}
.. config:option:: _changes
::
[httpd_db_handlers]
_changes = {couch_httpd_db, handle_changes_req}
.. config:option:: _compact
::
[httpd_db_handlers]
_compact = {couch_httpd_db, handle_compact_req}
.. config:option:: _design
::
[httpd_db_handlers]
_design = {couch_httpd_db, handle_design_req}
.. config:option:: _view_cleanup
::
[httpd_db_handlers]
_view_cleanup = {couch_mrview_http, handle_cleanup_req}
.. _config/httpd_design_handlers:
Design Documents HTTP Handlers
==============================
.. config:section:: httpd_design_handlers :: Design Documents HTTP Handlers
These HTTP resources are provided for design documents.
.. config:option:: _compact
::
[httpd_design_handlers]
_compact = {couch_mrview_http, handle_compact_req}
.. config:option:: _info
::
[httpd_design_handlers]
_info = {couch_mrview_http, handle_info_req}
.. config:option:: _list
::
[httpd_design_handlers]
_list = {couch_mrview_show, handle_view_list_req}
.. config:option:: _rewrite
::
[httpd_design_handlers]
_rewrite = {couch_httpd_rewrite, handle_rewrite_req}
.. config:option:: _show
::
[httpd_design_handlers]
_show = {couch_mrview_show, handle_doc_show_req}
.. config:option:: _update
::
[httpd_design_handlers]
_update = {couch_mrview_show, handle_doc_update_req}
.. config:option:: _view
::
[httpd_design_handlers]
_view = {couch_mrview_http, handle_view_req}