(一)Apache配置:
如果使用Apache做为Web server,则需要修改Apache的配置,将/login入口的http验证功能取消--移除apache配置文件中的类似如下行的代码:
<LocationMatch "/[^/]+/login">
AuthType Basic
AuthName "trac"
AuthUserFile E:/Trac/passwd.txt
Require valid-user
</LocationMatch>
最终类似这样的配置在http.conf中
<location /webbase/>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /var/www/webbase/
PythonOption TracUriRoot /webbase/
SetEnv PYTHON_EGG_CACHE /var/www/webbase/
</location>
(二)修改trac.ini配置:
(1)新增组件的支持:
在[components]段中增加:
trac.web.auth.LoginModule = disabled #禁用传统的登录模块插件
acct_mgr.web_ui.LoginModule = enabled
acct_mgr.web_ui.RegistrationModule = enabled
acct_mgr.htfile.HtPasswdStore = enabled
(2)设置密码表文件:
[account-manager]
password_format = htpasswd
password_store = HtPasswdStore
password_file = /var/www/webbase/conf/.htpasswd #这里配置密码文件的路径,根据实际情况修改
(3)添加初始用户以及修改目录权限
使用下面的命令添加初始用户
$sudo htpasswd -c
/var/www/webbase/conf/.htpasswd user_name
并把密码文件的权限改了,包括所有的网站页面,使用以下命令
$ sudo chown -R root:www-data www
$ sudo chmod -R g+rsw www/
(4)给添加的用户admin的管理权限
使用下面的命令把用户设为trac-admin权限
trac-admin /path/to/my/project
permission add username-from-htpasswd TRAC_ADMIN
permission list username-from-htpasswd
这样就可以在管理页面对用户进行管理了。
可以使用的配置比对