Freebsd+Apahe+Subversion+Trac


回転:http://blog.dayuer.com/freebsdapachesubversiontrac
まずFreebsdシステムをインストールします.私がインストールしたのは6.2です.src、ports、binary、doc.その他のポーツの中のpackageは先に詰めないでくださいを提案して、portsを昇格させてから入れます.この前、ポーツの中のxorgが6.9から7.2にアップグレードしました.アップグレードをインストールしたら面倒くさいです.他のパッケージは先にインストールしません.
レポートをアップグレードしてからインストールを開始します.まず、私たちはApacheとSubversionのソフトウェアをインストールしたいです.
dev# cd /usr/ports/www/apache22
dev# make WITH_AUTH_MODULES=yes WITH_DAV_MODULES=yes
WITH_SSL_MODULES=yes WITH_BERKELEYDB=db42 install clean
dev# cd /usr/ports/devel/subversion
dev# make -DWITH_SVNSERVE_WRAPPER -DWITH_MOD_DAV_SVN
-DWITH_APACHE2_APR install clean
インストールが完了したら、倉庫ディレクトリを初期化します.
dev# mkdir -p /svn/repos
dev# svnadmin create /svn/repos
dev# chown -R www:www /svn/repos
ここでwww:wwwユーザー/グループを使うのは、Apacheを通じてアクセスサポートを提供しているからです.Apacheを設定するプロファイル/usr/local/etc/apphe 22/httpd.com fは、以下に本体部分のみを表示します.
.....
LoadModule usertrack_module libexec/apache22/mod_usertrack.so
LoadModule unique_id_module libexec/apache22/mod_unique_id.so
LoadModule setenvif_module libexec/apache22/mod_setenvif.so
LoadModule version_module libexec/apache22/mod_version.so
LoadModule ssl_module libexec/apache22/mod_ssl.so
LoadModule mime_module libexec/apache22/mod_mime.so
LoadModule dav_module libexec/apache22/mod_dav.so
LoadModule status_module libexec/apache22/mod_status.so
LoadModule autoindex_module libexec/apache22/mod_autoindex.so
LoadModule asis_module libexec/apache22/mod_asis.so
LoadModule info_module libexec/apache22/mod_info.so
.......
LoadModule alias_module libexec/apache22/mod_alias.so
LoadModule rewrite_module libexec/apache22/mod_rewrite.so
#LoadModule dav_module libexec/apache22/mod_dav.so
LoadModule dav_svn_module libexec/apache22/mod_dav_svn.so
LoadModule authz_svn_module libexec/apache22/mod_authz_svn.so
apacheを再起動するとdav_があります.moduleのエラー.後に2回ロードしたことが分かりました.後ろのあのdavをください.moduleコメントが落ちました.前のそれを注釈すると間違います.そして/usr/local/etc/apaache 22/Includesでsvn.comを編集します.
dev# vi /usr/local/etc/apache22/Includes/svn.conf
<Location /svn>
DAV svn
SVNPath /svn/repos
AuthType Basic
AuthName "Feloo Subversion Repository"
AuthUserFile /etc/svn-auth-file
Require valid-user
</Location>
httpasswdを使って検証ユーザを作成する:
dev# htpasswd -cm /etc/svn-auth-file rory
最後に、/etc/rc.com nfファイルで設定します.
apache22_enable="YES"
アプリを起動したら、通過できます.http://you.host.nameOrIP/svn Subversion倉庫に訪問しました.クライアントとしては、Windowsの下でTortoicseSVNnを使用することができます.かなり良いツールです.以上の手順はFreeBSD 6.1-RC環境で試験に成功しました.ApacheがSSLをサポートするように適切な設定ができます.このようにすれば、svnはより安全になります.
次にtracをインストールします
dev# cd /usr/ports/www/trac

dev# make install clean
これでインストールします.簡単にしてください.次にinitevnを開始します.
dev# mkdir -p /trac/projects/

dev# trac-admin /trac/projects initenv

dev# chown -R www:www /trac/projects/ ( 。 owner Apache

)
操作中にいくつかの情報が提示されます.subversionのrepositoryアドレスは前に作成したrepository/svn/repos他は設定しなくてもいいです.これで作成しました.standloneサーバtracdを起動します.
dev# tracd --port 8000 /trac/projects
これで通過できます.http://you.host.nameOrIP:8000 インストールに成功したトラックを確認しました.これは基本的に完成しました.次にapacheを使ってtraccを運転します.mod_が必要です.pythonまたはmod_wsgiの応援.ここで私はmod_を選びました.pythonは、ポーツの中に既製のものがあるからです.
dev# cd /usr/ports/www/mod_python3

dev# make install clean
ここでは/usr/ports/www/mod_をインストールできません.pythonはここでmod_が必要です.python 3.1.3+/usr/ports/www/mod_pythonのバージョンは2.7.11です.インストールが完了したらApacheの配置を変更してインストールされたmod_をロードします.python.
dev# vi /usr/local/etc/apache22/httpd.conf 

LoadModule python_module libexec/apache22/mod_python.so
tricのLocation配置を追加します.
dev# vi /usr/local/etc/apache22/Includes/trac.conf 

<Location /trac>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /trac/projects
PythonOption TracUriRoot /trac
</Location>
<Location /trac/login>
AuthType Basic
AuthName "Feloo Trac Projects"
AuthUserFile /etc/svn-auth-file
Require valid-user
</Location>
ここで使っている認証ファイルはsvnと同じです.すべてOKです.Apphe devを再起動します.http://you.host.nameOrIP/trac 正常です.インストールが成功しました.おめでとうございます.
 
 上の説明に従って成功を示します.アップグレードしていないので、私が使っているシステムはfreebsd 6.2です.
私が使っています
trac-admin /trac/projects initenv
時に次のエラーメッセージがあります.問題の所在を知っている友達が起こしてくれます.
Creating and Initializing Project
Failed to create environment.[Errno 2]No such file or directory:'/var/mywork/tric/project'
Traceback(most recent call last):
  File"/usr/local/lib/python 2.4/site-packages/tracc/scripts/admin.py,line 139,in env_create
    self._env=Evironment(self.envname,create=True,dbmustr=dbmustr)
  File"/usr/local/lib/python 2.4/site-packages/tracc/env.py,line 79,in_init_
    self.reat(dbstr)
  File"/usr/local/lib/pythone 2.4/site-packages/tracc/env.py、line 174、in create
    os.mkdir(self.path)
OErrror:[Errno 2]No such file or directory:'/var/mywork/tric/project'
Failed to initialize environment.1
Traceback(most recent call last):
  File"/usr/local/lib/python 2.4/site-packages/tracc/scripts/admin.py,line 594,in do_initenv
    self.env_create(dbmustr)
  File"/usr/local/lib/python 2.4/site-packages/tracc/scripts/admin.py,line 144,in env_create
    sys.exit(1)
System Exit:1