See http://www.horde.org/apps/horde/docs/INSTALL and the installation documents in docs/INSTALL.
The Horde Framework and the different Horde applications are configured through a set of configuration files. The main configuration files conf.php can be modified through a web interface.
Administrators can access this interface through the Administration -> Setup menu. There is a list of all installed applications, including their version numbers and the current state of the configuration. You will see warning messages if a configuration hasn't been created at all, or if it is outdated, because you installed a newer version.
Right above the application list is a button that checks for newer versions of the installed applications on the horde.org web server. This only works if the local web server is allowed to make an HTTP request to an external web server. If you click the button, the page is reloaded and you see a message for each installed application whether a newer version exists. If there is a newer version available, there is also a link where you can immediately download the most recent version.
If you want to configure an application, you can click on the application name in this application list. You get to a form where all system-wide configurations for that application can be modified to your needs. If there are many configuration settings, they will be organized into tabs. Click on the tab of area that you want to configure. You can change tabs without losing any changes you made in current tab.
Some configuration changes may require to reload the form, to show more configuration items, based on that change. Again, no changes that have been done before get lost.
Once you are done with the configuration you can click on the button to generate the configuration. The complete configuration is then converted into a PHP file, and the web server tries to save that code into the application's config/conf.php file. For this to work, the conf.php file must have file permissions set so that the web server can overwrite that file.
You can copy the code from the text field and paste it into config/conf.php manually.
You can go back to the main configuration screen with the application list, where you will find some new elements at the bottom of the screen. These elements apply to all generated configurations at once. This means that you can continue to configure the applications, and the save all generated configuration files in one row.
If you have FTP access to the web server, you can enter a valid FTP user name and password, that has write permissions on the conf.php, in the small form at the lower right. Click the upload button and the generated PHP file will be uploaded with FTP.
In the lower left there is a link to review the changes you've made to all configuration files so far.
A third link that saves this PHP script in the temporary directory of the server. This is helpful so that you don't have to first download the script locally, only to transfer it back to the server in a 2nd step. If executed, this script also tries to delete itself, so that it's not left in the temporary folder, it might contain passwords or other sensitive information. If the deletion doesn't succeed, an error message is displayed. If you reload the configuration interface after a failed deletion, you will see a new link at the bottom that allows you to delete that script.
All methods to store the configuration try to create a backup of the old configuration. This only succeeds if there are sufficient file and directory permissions. The new configuration will be stored anyway, whether the backup could be created or not. You can restore a backup from the individual application's configuration form. If a configuration backup is found for that application, there will be another button at the bottom for restoring the backup.
The different available configuration settings are further explained on individual pages for the applications. Not all configuration settings are explained, because some are self-explanatory or already have sufficient explanations in the configuration interface, or because they simply haven't been documented yet.
In the developer documentation is also some more interesting information that's useful for administrators that want to customize their Horde installations or integrate it with other systems. See also the customization section on HowTo.