close
Warning:
Can't synchronize with repository "(default)" (Unsupported version control system "svn": No module named svn). Look in the Trac log for more information.
- Timestamp:
-
Jul 14, 2008, 10:28:16 AM (16 years ago)
- Author:
-
trac
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v1
|
v2
|
|
3 | 3 | |
4 | 4 | Trac supports [http://www.modpython.org/ mod_python], which speeds up Trac's response times considerably, especially compared to [TracCgi CGI], and permits use of many Apache features not possible with [wiki:TracStandalone tracd]/mod_proxy. |
| 5 | |
| 6 | These instructions are for Apache 2; if you are still using Apache 1.3, you may have some luck with [wiki:TracModPython2.7 TracModPython2.7]. |
5 | 7 | |
6 | 8 | == Simple configuration == |
… |
… |
|
47 | 49 | |
48 | 50 | The option '''`TracUriRoot`''' may or may not be necessary in your setup. Try your configuration without it; if the URLs produced by Trac look wrong, if Trac does not seem to recognize URLs correctly, or you get an odd "No handler matched request to..." error, add the '''`TracUriRoot`''' option. You will notice that the `Location` and '''`TracUriRoot`''' have the same path. |
| 51 | |
| 52 | The options available are |
| 53 | {{{ |
| 54 | # For a single project |
| 55 | PythonOption TracEnv /var/trac/myproject |
| 56 | # For multiple projects |
| 57 | PythonOption TracEnvParentDir /var/trac/myprojects |
| 58 | # For the index of multiple projects |
| 59 | PythonOption TracEnvIndexTemplate /srv/www/htdocs/trac/project_list_tepmlate.html |
| 60 | # A space delimitted list, with a "," between key and value pairs. |
| 61 | PythonOption TracTemplateVars key1,val1 key2,val2 |
| 62 | # Useful to get the date in the wanted order |
| 63 | PythonOption TracLocale en_GB.UTF8 |
| 64 | # See description above |
| 65 | PythonOption TracUriRoot /projects/myproject |
| 66 | }}} |
49 | 67 | |
50 | 68 | === Configuring Authentication === |
… |
… |
|
203 | 221 | For a virtual host that supports multiple projects replace "`TracEnv`" /var/trac/myproject with "`TracEnvParentDir`" /var/trac/ |
204 | 222 | |
| 223 | Note: !DocumentRoot should not point to your Trac project env. As Asmodai wrote on #trac: "suppose there's a webserer bug that allows disclosure of !DocumentRoot they could then leech the entire Trac environment". |
| 224 | |
205 | 225 | == Troubleshooting == |
206 | 226 | |
… |
… |
|
216 | 236 | For multiple projects, try restarting the server as well. |
217 | 237 | |
| 238 | === Expat-related segmentation faults === #expat |
| 239 | |
| 240 | This problem will most certainly hit you on Unix when using Python 2.4. |
| 241 | In Python 2.4, some version of Expat (an XML parser library written in C) is used, |
| 242 | and if Apache is using another version, this results in segmentation faults. |
| 243 | As Trac 0.11 is using Genshi, which will indirectly use Expat, that problem |
| 244 | can now hit you even if everything was working fine before with Trac 0.10. |
| 245 | |
| 246 | See Graham Dumpleton's detailed [http://www.dscpl.com.au/wiki/ModPython/Articles/ExpatCausingApacheCrash explanation and workarounds] for the issue. |
| 247 | |
218 | 248 | === Form submission problems === |
219 | 249 | |
… |
… |
|
254 | 284 | Pay attention to the version of the installed mod_python and sqlite packages. Ports have both the new and old ones, but earlier versions of pysqlite and mod_python won't integrate as the former requires threaded support in python, and the latter requires a threadless install. |
255 | 285 | |
256 | | If you compiled and installed apache2, apache wouldn´t support threads (cause it doesn´t work very well on FreeBSD). You could force thread support when running ./configure for apache, using --enable-threads, but this isn´t recomendable. |
| 286 | If you compiled and installed apache2, apache wouldn´t support threads (cause it doesn´t work very well on FreeBSD). You could force thread support when running ./configure for apache, using --enable-threads, but this isn´t recommendable. |
257 | 287 | The best option [[http://modpython.org/pipermail/mod_python/2006-September/021983.html seems to be]] adding to /usr/local/apache2/bin/ennvars the line |
258 | 288 | |