Changes between Version 1 and Version 2 of TracStandalone
- Timestamp:
- 03/20/09 12:02:34 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracStandalone
v1 v2 40 40 To exit the server on Windows, be sure to use {{{CTRL-BREAK}}} -- using {{{CTRL-C}}} will leave a Python process running in the background. 41 41 42 == Installing as a Windows Service == 43 44 To install as a Windows service, get the [http://www.google.com/search?q=srvany.exe SRVANY] utility and run: 45 {{{ 46 C:\path\to\instsrv.exe tracd C:\path\to\srvany.exe 47 reg add HKLM\SYSTEM\CurrentControlSet\Services\tracd\Parameters /v Application /d "\"C:\path\to\python.exe\" \"C:\path\to\python\scripts\tracd-script.py\" <your tracd parameters>" 48 net start tracd 49 }}} 50 51 '''DO NOT''' use {{{tracd.exe}}}. Instead register {{{python.exe}}} directly with {{{tracd-script.py}}} as a parameter. If you use {{{tracd.exe}}}, it will spawn the python process without SRVANY's knowledge. This python process will survive a {{{net stop tracd}}}. 52 53 If you want tracd to start automatically when you boot Windows, do: 54 {{{ 55 sc config tracd start= auto 56 }}} 57 58 The spacing here is important. 42 59 43 60 == Using Authentication == … … 52 69 then for additional users: 53 70 {{{ 54 sudo htpasswd / var/www/html/.htpasswd-usersusername271 sudo htpasswd /path/to/env/.htpasswd username2 55 72 }}} 56 73 then for starting the tracd: … … 95 112 {{{ 96 113 $ tracd -p 8080 \ 97 --auth= *,/path/to/users.htdigest,mycompany.com \114 --auth="*",/path/to/users.htdigest,mycompany.com \ 98 115 /path/to/project1 /path/to/project2 99 116 }}} 117 If using the `-s` parameter for serving a Trac environment from the root of a domain, one must use `*` for the project name 100 118 101 119 == How to set up an htdigest password file == … … 112 130 #!python 113 131 from optparse import OptionParser 114 import md5 132 # The md5 module is deprecated in Python 2.5 133 try: 134 from hashlib import md5 135 except ImportError: 136 from md5 import md5 137 realm = 'trac' 115 138 116 139 # build the options … … 121 144 parser.add_option("-p", "--password",action="store", dest="password", type = "string", 122 145 help="the password to use") 146 parser.add_option("-r", "--realm",action="store", dest="realm", type = "string", 147 help="the realm in which to create the digest") 123 148 (options, args) = parser.parse_args() 124 149 … … 126 151 if (options.username is None) or (options.password is None): 127 152 parser.error("You must supply both the username and password") 153 if (options.realm is not None): 154 realm = options.realm 128 155 129 156 # Generate the string to enter into the htdigest file 130 realm = 'trac' 131 kd = lambda x: md5.md5(':'.join(x)).hexdigest() 157 kd = lambda x: md5(':'.join(x)).hexdigest() 132 158 print ':'.join((options.username, realm, kd([options.username, realm, options.password]))) 133 159 }}} … … 144 170 It is possible to use md5sum utility to generate digest-password file using such method: 145 171 {{{ 146 echo -e "${user}:trac:${password}\c" | md5sum - >>to-file 147 }}} 148 and manually delete " -" from the end and add "${user}:trac:" to the start of line from 'to-file'. You can see attachment:trac-digest-corrected.sh for detail.172 $ printf "${user}:trac:${password}" | md5sum - >>user.htdigest 173 }}} 174 and manually delete " -" from the end and add "${user}:trac:" to the start of line from 'to-file'. 149 175 150 176 == Tips == … … 172 198 173 199 === Serving a different base path than / === 174 Tracd supports serving projects with different base urls th en /<project>. The parameter name to change this is175 {{{ 176 tracd --base-path=/some/path200 Tracd supports serving projects with different base urls than /<project>. The parameter name to change this is 201 {{{ 202 $ tracd --base-path=/some/path 177 203 }}} 178 204 179 205 ---- 180 See also: TracInstall, TracCgi, TracModPython, TracGuide 206 See also: TracInstall, TracCgi, TracModPython, TracGuide, [trac:TracOnWindowsStandalone?version=13#RunningTracdasservice Running tracd.exe as a Windows service]