| 98 | == GitのSmart HTTPとGitWebの混在 == |
| 99 | |
| 100 | 例えば、http://hostname/git にWebブラウザでアクセスするとリポジトリを閲覧でき、gitコマンドでアクセスするとリポジトリにアクセスできるようにしたい。 |
| 101 | CentOSでは、gitwebパッケージをインストールし/etc/httpd/conf.d/git.confファイルを次のように記述する。下記の例は、/var/lib/git以下にGitリポジトリが複数ある場合である。 |
| 102 | |
| 103 | {{{ |
| 104 | SetEnv GIT_PROJECT_ROOT /var/lib/git |
| 105 | SetEnv GIT_HTTP_EXPORT_ALL |
| 106 | |
| 107 | Alias /gitweb.css /var/www/git/gitweb.css |
| 108 | Alias /gitweb.js /var/www/git/gitweb.js |
| 109 | Alias /git-favicon.png /var/www/git/git-favicon.png |
| 110 | Alias /git-logo.png /var/www/git/git-logo.png |
| 111 | |
| 112 | <Directory /var/www/git> |
| 113 | Options +ExecCGI |
| 114 | AddHandler cgi-script .cgi |
| 115 | DirectoryIndex gitweb.cgi |
| 116 | </Directory> |
| 117 | |
| 118 | ScriptAliasMatch \ |
| 119 | "(?x)^/git/(.*/(HEAD | \ |
| 120 | info/refs | \ |
| 121 | objects/info/[^/]+ | \ |
| 122 | git-(upload|receive)-pack))$" \ |
| 123 | /usr/libexec/git-core/git-http-backend/$1 |
| 124 | ScriptAlias /git /var/www/git/gitweb.cgi |
| 125 | |
| 126 | }}} |
| 127 | |
| 128 | また、/var/www/git/gitweb.cgi にGitのルートディレクトリの設定を行う。 |
| 129 | |
| 130 | {{{ |
| 131 | our $projectroot = "/var/lib/git"; |
| 132 | |
| 133 | }}} |
| 134 | |
| 135 | |