File: configuration.html

package info (click to toggle)
webissues-server 0.8.3-2-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 392 kB
  • ctags: 610
  • sloc: php: 2,206; sql: 458; sh: 44; makefile: 9
file content (126 lines) | stat: -rw-r--r-- 9,929 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Configuring WebIssues</title>
    <link rel="stylesheet" href="common/style.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.0" />
    <meta name="keywords" content="webissues, issue tracking, bug tracking, team collaboration, server" />
    <link rel="start" href="index.html" title="The WebIssues Server Manual" />
    <link rel="up" href="installation.html" title="Chapter 2. Installation Guide" />
    <link rel="prev" href="security.html" title="Security settings" />
    <link rel="next" href="credits.html" title="Chapter 3. Credits and License" />
  </head>
  <body>
    <div id="header">
      <div id="header-bar">
        <img id="header-logo" src="common/webissues.png" alt="WebIssues" />
        <div id="header-title">The <span class="application">WebIssues Server</span> Manual</div>
        <div id="header-abstract">Issue tracking and team collaboration system</div>
      </div>
      <div id="header-links"><a accesskey="h" href="index.html">Home</a> &raquo; <a accesskey="u" href="installation.html">Installation Guide</a></div>
    </div>
    <div class="navlinks">
      <div class="navleft">&laquo; <a accesskey="p" href="security.html">Security settings</a></div>
      <div class="navright"><a accesskey="n" href="credits.html">Credits and License</a> &raquo;</div>
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="configuration"></a>Configuring <span class="application">WebIssues</span></h2>
          </div>
        </div>
      </div>
      <p>This chapter explains the configuration options available in the <code class="literal">config/config.inc.php</code> file. Use the configuration template to create this file and edit it to your needs before running the setup or upgrade.</p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
        <h3 class="title">Note</h3>
        <p>Make sure that the configuration file is not accessible to anyone except the web server process. See the <a class="link" href="security.html" title="Security settings">Security</a> chapter for more information.</p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="config_database"></a>Database connection</h3>
            </div>
          </div>
        </div>
        <p>Depending on the type of the database server, you have to select the appropriate database engine. There are currently four available engines:</p>
        <div class="variablelist">
          <dl>
            <dt>
              <span class="term">
                <code class="literal">mysql</code>
              </span>
            </dt>
            <dd>
              <p>Engine for MySQL. Requires the <code class="literal">mysql</code> PHP extension.</p>
            </dd>
            <dt>
              <span class="term">
                <code class="literal">mysqli</code>
              </span>
            </dt>
            <dd>
              <p>Engine for MySQL. Requires the <code class="literal">mysqli</code> PHP extension and MySQL version 4.1 or newer.</p>
            </dd>
            <dt>
              <span class="term">
                <code class="literal">pgsql</code>
              </span>
            </dt>
            <dd>
              <p>Engine for PostgreSQL. Requires the <code class="literal">pgsql</code> PHP extension.</p>
            </dd>
            <dt>
              <span class="term">
                <code class="literal">mssql</code>
              </span>
            </dt>
            <dd>
              <p>Engine for SQL Server. Only supported on Windows; requires PHP5.</p>
            </dd>
          </dl>
        </div>
        <p>Configuring the database connection requires entering four parameters: the database server host name, the database name and the user name and password used to authenticate the connection.</p>
        <p>The <code class="literal">db_host</code> is usually a computer name or IP address. It may be followed by a semicolon and port number if a non-standard port is used. When connecting to a local MySQL server, the MySQL client will automatically use a Unix local socket or Windows named pipe if it's available. To connect to the PostgreSQL server using a local socket, leave the <code class="literal">db_host</code> option blank.</p>
        <p>In case of SQL Server 2005 and SQL Server 2005 Express, the <code class="literal">db_host</code> option should include the computer name and server instance, for example <code class="literal">SERVER\SQLEXPRESS</code>. Also make sure that TCP/IP connections are enabled in the server's configuration and in case of SQL Server 2005 Express that it has a static port number assigned.</p>
        <p>Usually the <span class="application">WebIssues Server</span> connects to the database using SQL authentication, which requires passing a login and password which have to be stored in the configuration file. You can also configure SQL Server or PostgreSQL to use integrated authentication (called identity authentication in PostgreSQL). In that case leave the <code class="literal">db_user</code> and <code class="literal">db_password</code> option blank and give appropriate permissions to the database for the account used by the web server process.</p>
        <p>If the database is shared between multiple applications, enter a unique prefix in the <span class="application">WebIssues</span> configuration to avoid clashes with other database name. The prefix should begin begin with a letter and contain only letters, digits and underscore characters. You can also create multiple instances of the <span class="application">WebIssues Server</span> sharing the same database, but using a different prefix.</p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="config_storage"></a>Attachment storage</h3>
            </div>
          </div>
        </div>
        <p>By default all attachments larger than 4000 bytes are stored in the files system instead of the database. This improves performance and decreases the size of the database. You can adjust the threshold value by changing the <code class="literal">storage_min_size</code> option in the configuration file.</p>
        <p>The attachment files are stored by default in the <code class="literal">storage</code> subdirectory of the directory where the <span class="application">WebIssues Server</span> is installed. You have to create that directory and make sure it's readable and writable for the web server. You can change the location of the attachment storage to a location outside the server's root directory to improve security or if you want to store the files on a different disk partition. In that case modify the <code class="literal">storage_path</code> option to enter the path of the storage directory.</p>
        <p>You can also disable file storage and force storing all attachments in the database. To do that, clear the default value of the <code class="literal">storage_path</code> option. Note that database storage has significantly worse performance for large attachments.</p>
        <p>If you want the server to be able to handle large file attachments, you may have to change the <code class="literal">upload_max_size</code> and <code class="literal">post_max_size</code> parameters in the PHP configuration. Refer to the PHP manual for more details. Also adjust the memory limit and execution time limit for the PHP scripts.</p>
        <p>If you are storing large attachments in the database, you may also need to increase the limit of query size on the database server. For example when using MySQL, change the <code class="literal">max_allowed_packet</code> option in the server's configuration.</p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="config_logging"></a>Logging</h3>
            </div>
          </div>
        </div>
        <p>By default the server's errors log is written to the <code class="literal">log</code> subdirectory of the directory where the <span class="application">WebIssues Server</span> is installed. You have to create that directory and make sure it's readable and writable for the web server. You can change the location of the log file to another directory, for example <code class="literal">/var/log</code>. In that case modify the <code class="literal">log_errors</code> option to enter the path of the log file. Remove the default value to disable logging.</p>
        <p>Two additional log files can be enabled: <code class="literal">log_commands</code> enables logging all commands from the clients and server responses and <code class="literal">log_sql</code> enables logging all SQL queries executed by the server and their results. These logs are only useful for debugging purposes and should never be enabled on production servers.</p>
      </div>
    </div>
    <div class="navlinks">
      <div class="navleft">&laquo; <a accesskey="p" href="security.html">Security settings</a></div>
      <div class="navright"><a accesskey="n" href="credits.html">Credits and License</a> &raquo;</div>
    </div>
    <div id="copyright">
      <p class="copyright">Copyright © 2007-2008 WebIssues Team</p>
    </div>
  </body>
</html>