[cvs] [Wiki] changed: FAQ/Admin/Config

Wiki Guest wikiguest at horde.org
Sat Feb 17 08:59:32 PST 2007


guest [213.84.143.98]  Sat, 17 Feb 2007 08:59:32 -0800

Modified page: http://wiki.horde.org/FAQ/Admin/Config
New Revision:  4.10
Change log:  changed path to initial_user.sql and added note

@@ -1,9 +1,9 @@
-[[toc]]
-
  + Horde Administrator's FAQ
  
  ++ Configuration and Operation
+
+[[toc]]
  
  ++ General configuration
  
  +++ How can I have Horde in a different directory than /horde/ or configure an application to run in a virtual host?
@@ -43,8 +43,30 @@
  DocumentRoot  /usr/local/apache/htdocs/horde/imp
  </code>
  
  (substituting your own directory names for the defaults above). Then, make sure links within Horde are correct as follows:
+
+**[Horde 1.2]:** Modify the following variables in {{/horde/config/horde.php3}}:
+
+<code type="php">
+$default->horde_root_url      = '/horde';
+$default->horde_graphics_url  = $default->horde_root_url . '/graphics';
+$default->horde_include_dir   = './templates';
+</code>
+
+Note that the above are relative to the URL, not to the filesystem; the alias we added to the webserver will ensure that /horde works for anything not included in the component (such as problem reporting).
+
+Lastly, configure the Horde component (e.g. IMP) to be at the root of the webserver.
+
+**[IMP 2.x]:** Modify the following values in the file {{/horde/imp/config/defaults.php3}}:
+
+<code type="php">
+$default->root_url      = '';
+$default->graphics_url  = $default->root_url . '/graphics';
+$default->include_dir   = './templates';
+</code>
+
+Note that the {{root_url}} is the empty string {{""}}, and is NOT {{'/'}}!
  
  **[IMP 3.x/4.x]:** Modify the {{$this->applications['imp']}} array in {{horde/config/registry.php}} and change the value of the webroot as follows:
  
  <code type="php">
@@ -66,8 +88,23 @@
  DocumentRoot /usr/local/apache/htdocs/horde
  </code>
  
  (substituting directory names as appropriate).
+
+**[Horde 1.x]:** Configure the file {{/horde/config/horde.php3}} as above, and configure the root URL of the component ({{/horde/component/config/defaults.php3}}) as follows:
+
+<code type="php">
+$default->root_url      = '/componentdir';
+$default->graphics_url  = $default->root_url . '/graphics';
+$default->include_dir   = './templates';
+</code>
+
+replacing componentdir with the name of the directory containing the component. Users will then be able to access components at URLs like
+
+<code>
+http://yourhost.example.com/imp/
+http://yourhost.example.com/troll/
+</code>
  
  **[Horde 2.x]:** For Horde 2.x and it's components, modify the file {{/horde/config/registry.php}} in a similar way. At a minimum, you will need to change the horde application stanza, changing the webroot entry from {{'horde'}} to {{''}} (the empty string, not {{'/'}}).
  
  Finally, modify the file {{horde/config/conf.php}} to change the cookie path from {{'/horde'}} to {{'/'}} as in:
@@ -76,16 +113,30 @@
  $conf['cookie']['path'] = '/';
  </code>
  
  +++ How can I change the appearance?
+**[Horde 1.2]:** To change the basic look and feel of components based on Horde 1.2, change the settings in {{/horde/config/html.php3}} and in {{/horde/componentname/config/html.php3}}. The settings for various colours, fonts, logos, and screen elements sizes are found within, with explanatory variable names.
+
+In Horde 1.2, you can also add items to the bottom of the left-hand menu by adding them to /horde/config/menu.txt. This entry:
+
+<code>
+http://www.example.com/<Our Website>logo.gif
+</code>
+
+would make a menu item entitled "Our Website", place {{/horde/graphics/logo.gif}} beside it, and link it to {{``http://www.example.com/``}}.
+
+Similar functionality is available on a Horde 1.2 component-to-component basis to add items to the top of the left-hand menu. Add your entries in {{/horde/componentname/config/menu.txt}}, and using the component's graphics directory.
+
  **[Horde 2.0]:** For Horde 2.x and its components, configure the settings in {{/horde/config/html.php}} and in {{/horde/componentname/config/html.php}}. The settings for various colours, fonts, and styles are found within, with explanatory comments and variable names.
  
  In Horde 2.x, you can add Horde modules to the bottom Horde navigation bar by modifying {{/horde/config/registry.php}}. This is not as easy or flexible as the Horde 1.x method above.
  
  You can modify most Horde 2.x components' navigation bars (at the top of screen) by similarly modifying the {{/horde/componentname/config/menu.php}} file. Follow the instructions in the comments found in the file. This provides a very easy way to add links to the various Horde component navigation menus.
  
  +++ How can I change the phrases used for various features?
  You may wish to alter some of the text in an existing language -- to match the terminology used locally, for instance.
+
+**[Horde 1.2]:** In Horde 1.2, you need only find the text in question in the locale directory for the language in question and alter it there. For instance, if you want the Horde sign up form to read "Welcome to Foo" instead of "Welcome to Horde", you would change the {{$lang->welcome_to_horde}} variable in {{/horde/locale/en/signup.lang}} to your phrase. Similar functionality can be found in the {{locale/}} directory of Horde components.
  
  **[Horde 2.x]:** In Horde 2.x, you change strings by changing them in the locale files for the desired language(s). To change the US English translation, you will need to create a new US English (en_US) locale, as one normally does not exist, and modify the translations in that file. See the following FAQ entry for information on creating a new locale file.
  
  To change the translation for a locale, you must first change the locale files and then recompile them. Find the appropriate files in {{/horde/po/}}, named by the locale name. Edit the translation(s) in this file to suite your needs. Then compile the locale files using the provided Makefile. For Horde 2.x components, follow the same steps using the {{/horde/componentname/po}} files.
@@ -102,8 +153,16 @@
  
  Note: The following question may also be of help to you if you are changing the locale files.
  
  +++ How can I provide another translation for Horde/IMP's messages?
+**[Horde 1.2]:** If you want to provide an entirely new language translation for Horde or one of its components, in Horde 1.x:
+
+# Find the two-letter ISO [http://www.w3.org/WAI/ER/IG/ert/iso639.htm country code] for your language.
+# Copy the contents of {{locale/en/}} for your component to {{locale///yourcountrycode///}}. (Or, if you are more familiar with a language already provided other than English, copy that instead, since you will be using that translation to base yours upon.)
+# In each file within the directory you just created, replace the English (etc.) text with the equivalent text in your language.
+# Add your language to {{config/lang.php3}} for Horde or the component you changed.
+# Mail your new translation to [mailto:i18n at lists.horde.org the developers] so that we can include it in the distribution!
+
  **[Horde 2.x]:** Horde 2.x uses GNU gettext for internationalization (i18n) and localization (l10n). See {{horde/po/README}} for more information. (Since Horde 2.2 this information is instead located at {{[http://www.horde.org/horde/docs/?f=TRANSLATIONS.html horde/docs/TRANSLATIONS]}})
  
  To create a new translation:
  
@@ -117,8 +176,17 @@
  # Mail your new translation to [mailto:i18n at lists.horde.org the developers] so that we can include it in the distribution!
  
  +++ How do I let users report problems directly from Horde?
  Horde comes with a problem-reporting form.
+
+**[Horde 1.2]:** To enable it in Horde 1.2, make the following configuration changes to Horde in {{/horde/config/horde.php3}}:
+
+<code type="php">
+$default->problem_email     = 'your problem-report email address';
+$default->problem_reporting = true;
+</code>
+
+and users will be presented with a 'Problem?' menu item which leads to a problem-report form.
  
  **[Horde 2.0]:** In Horde 2.0, configure it in {{/horde/config/horde.php}} by modifying the following lines:
  
  <code type="php">
@@ -218,9 +286,15 @@
  
  Some special notes for some of the authentication methods are:
  
  * If using the sql backend with the {{horde_users}} table, the password must be in md5() format (and not the !MySQL password() format, for example).
-* CVS HEAD versions provide a script {{horde/scripts/sql/auth_initial_user.sql}} which will create an initial admin user for sql authentication. This can be used to login and configure the system. If you use this, be sure to change it as soon as possible so it does not become a security risk.
+* CVS HEAD versions provide a script {{horde/scripts/sql/script.initial_user.sql}} which will create an initial admin user for sql authentication. This can be used to login and configure the system. If you use this, be sure to change it as soon as possible so it does not become a security risk.
+For those looking for this script: 
+<code>
+INSERT INTO horde_users (user_uid, user_pass) VALUES ('admin', '21232f297a57a5a743894a0e4a801fc3');
+</code>
+creates a user 'admin' with password 'admin'.
+
  * If using IMAP authentication, see the comments in {{horde/imp/config/servers.php}} for options you may need to specify.
  
  +++ What are the default user name and password for the administrator?
  There are none. Since Horde supports a broad variety of different authentication backends and you are free to choose any of them for your Horde installation, the selected backend decides which are valid login credentials. And we we didn't add an authentication independant backdoor to Horde, for obvious reasons.
@@ -244,8 +318,17 @@
  http://example.net/webmail/
  </code>
  
  mail will be sent from //username at example.net//.
+
+**[IMP 2.2]:** To do this, set the following values in {{/horde/imp/config/defaults.php3}}:
+
+<code type="php">
+$default->server      = $SERVER_NAME;
+$default->from_server = $SERVER_NAME;
+</code>
+
+Note that the above will allow someone to go to a different virtual host than the one they are intended to use, after which their mail will come from the unintended virtual host.
  
  **[IMP 3.x]:** It is possible in IMP 3.x to use virtual hosts, but at this time we have no instructions for doing so. You can check the IMP mailing list archives for information.
  
  +++ How can I restrict what my users can do with IMP?
@@ -426,20 +509,54 @@
  
  +++ How can I use LDAP for IMP's contact list?
  For LDAP searches to work in IMP, LDAP support must have been compiled into PHP.
  
-**[IMP 3+]:** IMP 3.x no longer has a built-in address book, but instead uses the Horde module Turba for an address book. See the Turba faq section for information on configuring Turba for LDAP support. You must have Turba installed and working before you configure IMP to use it for address books.
+**[IMP 2.2]:** To configure IMP to allow LDAP searches in the contact list, first enable LDAP in {{/horde/imp/config/defaults.php3}}:
+
+<code type="php">
+$default->use_ldap_search = true;
+</code>
+
+Then, in {{/horde/imp/config/ldap.php3}}, specify your LDAP servers. An example LDAP server configuration is available in {{/horde/imp/config/ldap.php3.dist}}.
+
+**[IMP 3.x]:** IMP 3.x no longer has a built-in address book, but instead uses the Horde module Turba for an address book. See the Turba faq section for information on configuring Turba for LDAP support. You must have Turba installed and working before you configure IMP to use it for address books.
  
  To configure IMP to use one or more Turba directories, you modify the file {{horde/imp/config/prefs.php}} to set the value of the {{$_prefs['search_sources']}} array. The 'value' field of this array needs to be set to a tab delimited set of Turba directory sources. IMP will then use these sources for directory lookups.
  
  +++ How can I let users change their password through IMP?
+**[IMP 2.2]:** To enable password changes through IMP, set the following in {{/horde/imp/config/defaults.php3}}:
+
+<code type="php">
+$default->change_password = 'poppassd.php3';
+$default->poppassd_server = $SERVER_NAME;
+$default->poppassd_port   = '0';
+</code>
+
+You will have to install a [http://www.netwinsite.com/poppassd/ poppassd server] on your IMAP server for the above to work. Note that that poppassd won't work out of the box unless you're using !SunOS from 1993; you'll have to tell it what to expect from your passwd command at the top of {{poppassd.c}}.
+
+If you're using a recent version of Linux that authenticates via PAM, Jacob Coreil observes that a modified and [ftp://ftp.ceti.com.pl/pub/linux/poppassd-1.8-ceti.tar.gz PAM-ready version of poppassd] is also available. Piotr Michalczyk reported that, if you're using SASL authentication, you may want to install [http://pm.freehost.pl/file/saslpoppassd.tar.bz2 saslpoppassd] (by Mikkel Fischer).
+
+You can also set
+
+<code type="php">
+$default->change_password
+</code>
+
+to the URL of a dedicated password-changing program at your site, or you can change
+
+<code type="php">
+$default->poppassd_server
+</code>
+
+to point to a central password server at your site which runs poppassd.
+
  **[IMP 3+]:** Since version 3.x IMP does not include support for changing passwords. You can download a seperate Horde module called [http://www.horde.org/passwd/ Passwd] to add this functionality. 
  
  +++ How can I let users open new accounts through IMP?
  **[IMP 2.2]:** There is rudimentary account-signup functionality built into Horde 1.2 (IMP 2.2), which will allow users to fill out a form to request an account, and then send the collected data to a specified email address. To enable it, set the following in {{horde/config/horde.php3}}:
  
  <code type="php">
-$default->signup = true;
+$default->signup       = true;
  $default->signup_email = 'address which receives account requests';
  </code>
  
  There is currently no automated account creation facility in IMP. If you feel you are capable of writing this (meaning that you know how to write secure setuid programs!), look at {{horde/signup.php3}}. Keep in mind that allowing users to create accounts without any sort of admin authorization might not be a good thing.


More information about the cvs mailing list