`
a420144030
  • 浏览: 83703 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Apache2.2 + Python2.5 + Trac0.11 + Subversion1.4 + ViewVC を Windows で

阅读更多

网站地址:http://yuichi.tea-nifty.com/blog/2008/01/apache22_python_d41b.html

Apache2.2 + Python2.5 + Trac0.11 + Subversion1.4 + ViewVC を Windows で

trac0.11 の beta1 が出てきて1ヶ月と少々、そろそろ正式版 が出てくることを期待しつつ忘れる前にメモ整理。
ここでのTrac はあくまでも 0.11beta1 の話(2008/01/19現在)なのでその点には注意。

Apache2.2.8 + Python2.5.1 + Trac0.11beta1 + Subversion1.4.6 + ViewVC

を Windows な自宅サーバ環境にオレオレ証明書でのSSLまで、はしょりつつ全部入りメモ。

【参考にしたサイトなど】

インストール手順をまとめていくれている方々、ツールを提供されているサイトには感謝多謝!!

【調達物】

1月19日ごろ現在で適当にゲットしたもの

 

【自宅サーバの状態】

  • サーバは srv.home.local
  • 基本的なインストール先は c:\usr のした
  • 各種データ置き場は
    • Subversion リポジトリは d:\SVN\rensyu のように d:\SVN のした
    • Trac は d:\Trac\rensyu のように d:\Trac のした
    • httpのドキュメントルートは d:\www
  • 各種実行バイナリは c:\usr\bin にあって、c:\usr\bin へのパスが通っている前提
  • OS は Windows Small Business Server 2003 SP2 で IIS も動作中 port:80 と 443 は IIS が使用中

以上の条件で Trac (と ViewVC )を セットアップ
Trac月 で導入する方が楽という事実はまぁさておき、、、ともかくセットアップ開始。。。

【step1/10. Subversion (1/2) 】

まず Subversion 本体
1.4.6 系の setup.exe なバイナリが無いのでちょっと変則的な方法、不具合が出るかもしれないけれど今のところ無事

  1. Apache2.0用 svn-1.4.5-setup.exe をインストール、インストール先は C:\usr\Subversion
  2. Apache2.2用 svn-win32-1.4.6.zip を解凍してインストール場所 C:\usr\Subversion に上書きコピー

 

【step2/10. TortoiseSVN 】

あると便利(無いと不便)なのでインストール

  1. インストーラで本体をインストール、インストール先は c:\usr\TortoiseSVN
    Windowsの再起動を問われるが次と一度で済ませたいのでここでは再起動しない
  2. LanguagePack をインストール
    再起動を問われるのでここで再起動

TortoiseSVN のヘルプ『サーバのセットアップ』は毎度の事ながらお世話になりっぱなし。
必要に応じて WinMerge もインストールしておく。
再起動後に TortoiseSVN の設定で言語を日本語への変更とダイアログのフォントは適切に変更するのを忘れずに。

【step3/10. Apache (1/3) 】

まず Apache 本体インストールと基本的な動作確認

  1. apache_2.2.8-win32-x86-openssl-0.9.8g.msi をカスタムでインストーラなりにインストール、インストール先は c:\usr\Apache2.2 に変更
    毎度ながら IIS とかち合うので、動作確認は httpd.conf を書き換えてから
  2. C:\usr\Apache2.2\bin\conf\httpd.conf の編集
    1. IIS とぶつからないようにポートを変更
      Listen 8080
    2. DocumentRoot の C:/usr/Apache2.2/htdocs を自分の環境に合わせてD:/www に書き換え
      DocumentRoot "D:/www"

      <Directory "D:/www">
    3. ディレクトリの一覧が寂しいのと、マニュアルぐらいローカルで読めるようにしたいので、コメントアウトを取って有効にする
      httpd-manual.conf

      httpd-autoindex.conf
  3. タスクトレイのアイコンなどから Apache を start してひとまずアクセス可能か確認
  4. 動作を確認できたら Apache は stop させておく

 

【step4/10. Subversion (2/2) 】

Apache と Subversion の連携をセットアップ

  1. Apache用のモジュール mod_dav_svn.somod_authz_svn.so を C:\usr\Subversion\bin から C:\usr\Apache2.2\modules へコピー
  2. httpd.conf の編集
    1. コメントアウトを取って有効にする
      LoadModule dav_module modules/mod_dav.so
      LoadModule dav_fs_module modules/mod_dav_fs.so
    2. モジュールが列挙されている直後辺りに追加
      ##
      ## for subversion
      ##
      LoadModule dav_svn_module modules/mod_dav_svn.so
      LoadModule authz_svn_module modules/mod_authz_svn.so
    3. 最後あたりに追加
      [for subversion repository : httpd.conf]


      【補足】
      SVNIndexXSLT "/svnindex.xsl" の行は無くても特に支障はない、が、TortoiseSVN でのチェックアウト用リンクを有効にしたいので TortoiseSVN のヘルプにある http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/contrib/other/svnindex から(ユーザー:guest / パス:なし)
      • menucheckout.ico
      • svnindex.css
      • svnindex.xsl
      をダウンロードして、DocumentRoot である d:\www に置いておく
      menucheckout.ico は menucheckout.gif (アイコンは 16x16 のデータを gif で保存)として作り直して svnindex.xsl の menucheckout.ico に関する箇所を合わせて書き直しておくと、IE からアクセスしたときにチェックアウトのアイコンが表示されて多少見栄えが良くなる。
      IE をそもそも使っていないので、労のわりに報われない変更。。。
  3. Apache と start してwebブラウザや TortoiseSVN からリポジトリへのアクセスを確認しておく
  4. 動作を確認できたら Apache は stop させておく

 

【step5/10. Apache (2/3) 】

所詮自宅サーバで細かく逐一認証の設定は面倒なのでWindowsドメイン認証一括
basic認証とか他の方法は割愛

  1. ゲットしてきた mod_auth_sspi-1.0.4-2.2.2.zip を解凍して mod_auth_sspi.so を Apache のモジュールディレクトリ c:\usr\Apache22\modules へコピー
  2. httpd.conf を編集
    1. モジュール一覧で auth 関連がある辺りの前に追加
      ## for windows domain auth
      LoadModule sspi_auth_module modules/mod_auth_sspi.so
    2. Subversion 用に追加したディレクティブを再編集
      [for subversion repository : httpd.conf]
  3. Apache を start
  4. ドメインのアカウントで webブラウザや TortoiseSVN からリポジトリにアクセスできる事を確認する
  5. 動作を確認できたら Apache は stop させておく

 

【step6/10. Python 】

Python本体と関連物をインストール

  1. インストーラ python-2.5.1.msi に任せて C:\usr\Python25 へインストール
  2. 追加で Python for Windows extensions をインストーラ pywin32-210.win32-py2.5.exe に任せてインストール
  3. システム環境変数の Path に C:\usr\Python25C:\usr\Python25\Scripts を追加
  4. mod_python をインストーラ mod_python-3.3.1.win32-py2.5-Apache2.2.exe に任せてインストール
    インストール途中で Apache のインストール先を問われるので間違えずに指定
  5. httpd.conf を編集
    1. モジュールが列挙されている最後辺りに追加
      ##
      ## for mod_pyhotn
      ##
      LoadModule python_module modules/mod_python.so
  6. Subversion の Python Bindings のインストーラ svn-python-1.4.6.win32-py2.5.exe に任せてインストール

念のために再起動しておく。

【step7/10. Trac 】

exeなインストーラの方がアンインストールしやすいような気がしつつも、折角なので Easy install 主体で。

  1. Easy install の ez_setup.py を名前を付けてファイルとして保存
  2. Easy install をインストール、ez_setup.py を保存した場所で
    >python ez_setup.py
  3. 引き続き
    >easy_install Pygments

    >easy_install Genshi

    >easy_install Trac

    で一通り完了

【補足】
0.11beta1 では Easy install や exeなインストーラでインストールした場合と、ソースからインストールした場合でインストール先が多少異なっているので注意

Easy install と exeなインストーラ でインストール
C:\usr\Python25\Lib\site-packages\Trac-0.11b1-py2.5-win32.egg
ソースからインストール
C:\usr\Python25\Lib\site-packages\Trac-0.11b1-py2.5.egg

 

【step8/10. TracEnvironment の整備 】

最低限の動作確認と plugin のインストール

  1. TracEnvironment を D:\Trac\rensyu に作成する
    >trac-admin d:\Trac\rensyu
    Trac [D:\Trac\rensyu]> initenv
    いくつか問われるので適当に適切に作成。
    管理者ユーザ(要は自分のアカウント) tracadmin に管理者権限を付与
    Trac [D:\Trac\rensyu]> permission add tracadmin TRAC_ADMIN
    • 既存 (D:\Trac\test2)のアップグレードなら以下の感じで
      >trac-admin d:\Trac\test2
      Trac [D:\Trac\test2]> upgrade
      Trac [D:\Trac\test2]> wiki upgrade
  2. 作業が終わったら trac-admin を exit して終了
    Trac [D:\Trac\rensyu]> exit
  3. Apache にTrac用の設定を追加すべく httpd.conf を編集
    1. Trac の一覧が /projects としてアクセスできる使い方をしたいので次のような感じで httpd.conf の末尾に追加
      [for Trac : httpd.conf]

      ★beta1 から正式版になったときにパスの書き換えに注意★
  4. Apache を restart して http://srv.home.local:8080/projects にアクセスして Trac の一覧が表示されるか確認
  5. 各々の trac に入り、表示されたら、login でログインしてメニューの右端に追加される Admin 利用が可能か確認
  6. 試しにplugin を追加
    IniAdminPlugin を追加してみる
    1. 0.11 用をダウンロードして解凍
    2. 解凍して setup.py のある場所で
      > python setup.py bdist_egg
    3. 全体で有効にしたいでの作成した場所で
      > easy_install dist\IniAdmin-0.2-py2.5.egg
    4. Trac の Admin メニューの Plugins に現れる iniadmin の Enabled にチェックを入れて [Apply changes]
    Table of Contents Macro を追加してみる
    1. Easy install で0.11用をインストール
      > easy_install http://trac-hacks.org/svn/tocmacro/0.11
    2. Trac の Admin メニューの Plugins に現れる tractocmacro の Enabled にチェックを入れて [Apply changes]

plugin の追加時には適宜 Apache を restart して動作の確認。
設定ファイルである D:\Trac\(TracEnvironment)\conf\trac.ini はメモ帳で編集しない、BOMを付加しないように、utf-8で保存することに注意。

【step9/10. Apache (3/3) : SSL 設定】

ユーザーは自分一人な自宅サーバなので、いわゆる オレオレ証明書 (参考:Webサイトのデジタル証明書を確認する@IT) でSSL。

  1. Apache の設定を適宜編集
    httpd.conf
    Include conf/extra/httpd-ssl.conf
    コメントアウトを取って有効にする

    conf\extra\httpd-ssl.conf
    Listen 8443

    #SSLMutex "file:C:/usr/Apache2.2/logs/ssl_mutex"

    <VirtualHost _default_:8443>

    DocumentRoot "D:/www"
    ServerName srv.home.local:8443
    ServerAdmin メール@アドレス

    SSLCertificateFile "C:/usr/Apache2.2/conf/ssl/my-server.cert"
    SSLCertificateKeyFile "C:/usr/Apache2.2/conf/ssl/my-server.key"
    1. ポートの変更
    2. SSLMutex の行をコメントアウト
    3. DocumentRoot など 自宅サーバの環境に合わせて形だけでも一応変更
    4. sslファイル名に合わせて SSLCertificateFile と SSLCertificateKeyFile を変更
  2. ファイル置き場のディレクトリ c:\usr\Apache2.2\conf\ssl の作成と4000日有効なオレオレ証明書を作成(それぞれ一行で入力)
    >cd C:\usr\Apache2.2
    >md conf\ssl

    >bin\openssl req -config conf\openssl.cnf -new -out my-server.csr
    (pass phrase 入力後、色々問われるので適切に入力)

    >bin\openssl rsa -in privkey.pem -out my-server.key
    (pass phrase を間違えないように入力)

    >bin\openssl x509 -in my-server.csr -out my-server.cert -req -signkey my-server.key -days 4000

    >bin\openssl x509 -in my-server.cert -out my-server.der.crt -outform DER
  3. 生成されたファイル (my-server.der.crt, my-server.csr, my-server.key, .rnd, privkey.pem, my-server.cert)を C:\usr\Apache2.2\conf\ssl へ移動
  4. Apache を restart させ https://srv.home.local:8443/svnhttps://srv.home.local:8443/projects へアクセスを確認
  5. ルーターのポートや「ルーティングとリモート アクセス」やら外部公開の諸設定を確認して設定
  6. PCでも携帯でも適当に外部からアクセスの確認

 

trac のセットアップはとりあえず以上で。


【step10/10. ViewVC 】

ViewVC の trunk をインストール

  1. trunk を http://viewvc.tigris.org/svn/viewvc/trunk/ から チェックアウトする
    ユーザー:guest / パス:なし
  2. チェックアウトしたディレクトリから
    > python viewvc-install
    インストール先は適当に (今回は c:\usr\viewvc-1.1-dev )
  3. viewvc.conf を適当に編集、とりあえず変更点は4箇所
    c:\usr\viewvc-1.1-dev\viewvc.conf
    #cvs_roots = cvs: /home/cvsroot

    root_parents = D:\SVN : svn

    #default_root = cvs

    allowed_views = markup, annotate, tar, co
    1. 2箇所コメントアウトする、cvs_rootsdefault_root
    2. repository一覧が /viewvc で見えるように root_parents をrepositoryに合わせて指定
    3. tar でのダウンロードと、ファイルのダウロードを有効にするために、allowed_views に tar, co を追加
  4. httpd.conf へ ViewVC 関連を httpd.conf の末尾に追加
    [for ViewVC : httpd.conf]
  5. tar とか gzip とか DiffUtils と各々の requirements なモジュールを解凍してバイナリを c:\usr\bin に置く
  6. Apache を restart
  7. http://srv.home.local:8080/viewvchttps://srv.home.local:8443/viewvc で見え方の確認
分享到:
评论

相关推荐

    Trac0.12+SVN1.6+Apache2.2在windows下的配置说明

    在本文档中,我们将探讨如何在Windows环境下配置Trac 0.12、Subversion (SVN) 1.6和Apache 2.2。Trac是一个开源的项目管理工具,它集成了版本控制系统(如SVN)和一个Web界面,提供了问题跟踪、文档管理和源代码...

    windows下Apache+SVN+Trac安装及配置(一)

    ### Windows 下 Apache+SVN+Trac 安装与配置详解 #### 一、准备工作 在开始集成 Apache、Subversion (SVN) 和 Trac 的过程中,首先要准备好所需的软件。 1. **Apache HTTP Server** - **官网**: ...

    Windows 平台下Trac+apache+mysql+svn集成

    7. **mod-python**: mod_python-3.3.1.win32-py2.5-Apache2.2 8. **easyInstall**: setuptools-0.6c11.win32-py2.5 9. **MySQL**: mysql-installer-web-community-5.6.14.0 10. **MySQL-Python**: MySQL-python-...

    Apache+SVN+Trac配置详解

    ##### 3.4 APACHE+TRAC+SVN集成 为了实现Apache、Trac和SVN的集成,需要进行以下步骤: 1. **配置虚拟主机**:在Apache的配置文件中添加虚拟主机条目,指向Trac的安装目录。 2. **启用mod_wsgi模块**:这是Apache...

    svn+apache+trac配置

    Trac 是一个开源的项目管理工具,它集成了版本控制系统(如Subversion)与问题跟踪系统,同时还提供了wiki和时间线等功能,对于软件开发团队来说非常有用。在本配置中,我们将通过Apache web服务器来部署Trac,实现...

    trac 0.11 安装手册

    《trac 0.11 安装手册》详述了如何在Windows环境下搭建trac 0.11版本的集成开发环境,该环境基于Python 2.5.2、SQLite数据库、Subversion (svn) 1.5,并且不依赖Apache服务器。以下是安装过程的关键步骤: 1. 首先...

    Python库 | Trac-1.4.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:Trac-1.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    windows下配置apache+svn+trac的方法详解

    本文将详细介绍如何在 Windows 平台下配置 Apache、Subversion (SVN) 和 Trac 这三个组件,从而搭建一套完整的项目管理系统。 #### 二、所需组件简介 - **Apache**: Web 服务器,用于提供 HTTP 服务。 - **...

    Apache+Trac+SVN

    【Apache+Trac+SVN】是一个常见的项目管理和版本控制系统组合,主要应用于Windows环境。Apache作为Web服务器,Trac是一个带有内置wiki和问题跟踪系统的Web应用程序,而SVN(Subversion)则是版本控制系统,用于追踪...

    Apache+SVN+Trac

    Apache 作为Web服务器,Subversion (SVN) 提供版本控制功能,而 Trac 则是一个集成的项目管理工具,提供了缺陷跟踪、文档管理、wiki 和时间线等功能。 **Apache 安装与配置** 1. 下载Apache HTTP Server的最新稳定...

    SVN+Apache+Trac安装配置

    echo /usr/local/subversion/lib/svn-python &gt; /usr/local/lib/python2.5/site-packages/subversion.pth python &gt;&gt;&gt; import svn.repos # 使用 Ctrl+D 退出 ``` 完成以上步骤后,`mod_dav_svn.so` 和 `mod_...

    Apache+svn+trac安装笔记

    在本安装指南中,我们将详细介绍如何在Windows 2000/2003/XP操作系统上安装Apache Web服务器、Subversion (svn) 版本控制系统以及Trac项目管理工具,并完成它们之间的集成配置。为了确保所有步骤都能顺利进行,我们...

    Win安装svn+trac

    【安装Apache+Subversion+ViewVC学习笔记】 在IT领域,特别是版本控制系统中,Subversion(简称SVN)是一个广泛使用的工具,它允许团队协作并管理代码和其他文件的版本。Trac是一个开源的项目管理和问题跟踪系统,...

    apache+svn+trac安装软件

    Apache、Subversion(SVN)和Trac是一个强大的版本控制系统和项目管理工具组合,常用于协同开发和代码管理。在本篇文章中,我们将详细介绍如何在您的系统上安装和配置Apache、Subversion和Trac。 首先,Apache是...

    Apache+SVN+Trac完整工具包

    该工具包中包括了三者集成的说明文档和相关安装包 软件列表: ...python-2.5.msi Setup-Subversion-1.5.6.msi setuptools-0.6c11.win32-py2.5.exe svn-python-1.5.6.win32-py2.5.exe Trac-0.12.2.win32.exe

    敏捷开发-项目管理-Trac

    Trac是采用Python语言开发的,因此Trac的在运行的时候,需要有Python环境的支持,在本手册中Python采用2.5,Trac采用0.11Beta版本、Apache 2.2。 Trac采用面向进度的开发模型,因此产生了Milestone的概念,那么...

    Apache+Trac配置

    本文将详细介绍如何在Windows XP操作系统上配置Apache服务器与Trac,以实现项目的版本控制和问题跟踪管理。 #### 二、系统需求及准备工作 - **操作系统**: Windows XP - **软件准备**: - Apache HTTP Server - ...

    Trac+SVN+Apache安装笔记

    在本文中,我们将详细探讨如何在Windows环境下安装和配置Trac、Subversion(SVN)以及Apache服务器,这对于初学者来说是一份宝贵的指南。首先,确保你已经准备好所有必要的软件包,包括Apache、SVN、TortoiseSVN、...

Global site tag (gtag.js) - Google Analytics