1.11.2008

trac : login fail

Trac 設定中,login 功能一直不能實現,每次都會出現
Internal Error:
Authentication information not available.
google了一堆,有關login 需要做的事:
  • apache2 中 trac 的conf要設定 login path 的section
  • 要用 trac-admin 命令create user,並授予權限 (因為trac default 是anonymouse)。
都做了,還是一樣不成功。

trac 的設置真是太多樣化了,可以選 tracd,cgi和 mod_python三種運作方式,
每種有不同的設定方法。

又,使用apache時,又可以選是不是使用 virtual host 。
設法又不一樣。

所以,真的是....



因為公司中dns不歸我們管,所以apache不能用virtual host,而大部分的說明都是用virtual host。

最後,原因找到就是因為virtual host 的原因,
因為我沒用,所以 trac 的conf 中...
<LocationMatch "/trac/[^/]+/login">
這個寫法有錯,
我的path應該是
/trac/login
而上述的寫法,trac和login間必須要有其他的字。所以login path 是錯的。

修改的方法是直接寫
/trac/login/
就好了。

conclusion :

  • apache中trac的conf 裡要有login 的path,並且要寫對 (移動游標到"login"上,看看path就知道了。
  • 用 trac-admin permission add 給user-name permission。
  • 重開 apache2
* 有關trac-admin 的用法,trac 的wiki (安裝trac就有),有詳細說明。

沒有留言: