Changes between Version 1 and Version 2 of TracCgi
- Timestamp:
- 01/02/10 17:05:00 (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracCgi
v1 v2 3 3 To install Trac as a CGI script, you need to make the `trac.cgi` executable as a CGI by your web server. 4 4 5 {{{ 6 #!div class=important 7 ''Please note that using Trac via CGI is significantly slower than any other deployment method, such as [TracModPython mod_python] or [TracFastCgi FastCGI] or even [trac:TracOnWindowsIisAjp IIS/AJP] on Windows.'' 8 }}} 5 ''Please note that using Trac via CGI is significantly slower than any other deployment method, such as [TracModPython mod_python] or [TracFastCgi FastCGI].'' 9 6 10 7 If you're using [http://httpd.apache.org/ Apache HTTPD], there are a couple ways to do that: 11 8 12 9 1. Use a `ScriptAlias` to map a URL to the `trac.cgi` script 13 2. Copy the `trac.cgi` file into the directory for CGI executables used by your web server (commonly named `cgi-bin`). A word of warning, copying the file directly from the repository onto a windows server 2003 machine created difficulties. Rather create a new text file and cut and copy the text into the newly created file.You can also create a symbolic link, but in that case make sure that the `FollowSymLinks` option is enabled for the `cgi-bin` directory.10 2. Copy the `trac.cgi` file into the directory for CGI executables used by your web server (commonly named `cgi-bin`). You can also create a symbolic link, but in that case make sure that the `FollowSymLinks` option is enabled for the `cgi-bin` directory. 14 11 15 12 The first option is recommended as it also allows you to map the CGI to a friendly URL. … … 36 33 }}} 37 34 38 ''Note that the `SetEnv` directive requires the `mod_env` module to be installed and enable. If not, you could set TRAC_ENV in trac.cgi. Just add the following code between "try:" and "from trac.web ...":'' 39 40 {{{ 41 import os 42 os.environ['TRAC_ENV'] = "/path/to/projectenv" 43 }}} 44 45 '' Or for TRAC_ENV_PARENT_DIR: '' 46 47 {{{ 48 import os 49 os.environ['TRAC_ENV_PARENT_DIR'] = "/path/to/project/parent/dir" 50 }}} 35 ''Note that the `SetEnv` directive requires the `mod_env` module to be installed and enable.'' 51 36 52 37 This will make Trac available at `http://yourhost.example.org/trac`. … … 75 60 For example, if Trac is mapped to `/cgi-bin/trac.cgi` on your server, the URL of the Alias should be `/cgi-bin/trac.cgi/chrome/common`. 76 61 77 Similarly, if you have static resources in a projects htdocs directory, you can configure apache to serve those resources (again, put this '''before''' the `ScriptAlias` for the CGI script, and adjust names and locations to match your installation):78 79 {{{80 Alias /trac/chrome/site /path/to/projectenv/htdocs81 <Directory "/path/to/projectenv/htdocs">82 Order allow,deny83 Allow from all84 </Directory>85 }}}86 87 62 Alternatively, you can set the `htdocs_location` configuration option in [wiki:TracIni trac.ini]: 88 63 {{{ … … 95 70 $ ln -s /usr/share/trac/htdocs /var/www/your_site.com/htdocs/trac-htdocs 96 71 }}} 97 98 Note that in order to get this `htdocs` directory, you need first to extract the relevant Trac resources using the `deploy` command of TracAdmin:99 [[TracAdminHelp(deploy)]]100 101 72 102 73 == Adding Authentication == … … 142 113 }}} 143 114 144 For better security, it is recommended that you either enable SSL or at least use the “digest” authentication scheme instead of “Basic”. Please read the [http://httpd.apache.org/docs/2.0/ Apache HTTPD documentation] to find out more. For example, on a Debian 4.0r1 (etch) system the relevant section in apache configuration can look like this: 145 {{{ 146 <Location "/trac/login"> 147 LoadModule auth_digest_module /usr/lib/apache2/modules/mod_auth_digest.so 148 AuthType Digest 149 AuthName "trac" 150 AuthDigestDomain /trac 151 AuthUserFile /somewhere/trac.htpasswd 152 Require valid-user 153 </Location> 154 }}} 155 and you'll have to create your .htpasswd file with htdigest instead of htpasswd as follows: 156 {{{ 157 # htdigest /somewhere/trac.htpasswd trac admin 158 }}} 159 where the "trac" parameter above is the same as !AuthName above ("Realm" in apache-docs). 115 For better security, it is recommended that you either enable SSL or at least use the “Digest” authentication scheme instead of “Basic”. Please read the [http://httpd.apache.org/docs/2.0/ Apache HTTPD documentation] to find out more. 160 116 161 117 ---- 162 See also: TracGuide, TracInstall, wiki:TracModWSGI,TracFastCgi, TracModPython118 See also: TracGuide, TracInstall, TracFastCgi, TracModPython