RedmineとSVNのインストール(初心者がさくらのVPSを立ち上げるまで - その13)
Redmineのインストール
公式ページ(Redmine 2.4をCentOS 6.4にインストールする手順 | Redmine.JP Blog)をみながらインストールすればよいが、ここまでインストールしてきたものと重複もあるので、作業自体は下記の通りでそれほど多くない。
準備
ImageMagick、yamlなどをインストールする。
su - yum -y install ImageMagick ImageMagick-devel curl-devel libyaml-devel yum -y install --enablerepo=remi,rpmforge mysql-devel
作業用ユーザーにもどり、gem bundlerをインストール
exit #作業用ユーザーに戻る gem install bundler --no-rdoc --no-ri
mysql -uroot -p mysql> create database db_redmine default character set utf8; mysql> grant all on db_redmine.* to user_redmine identified by 'パスワード'; mysql> flush privileges; mysql> exit;
インストール
公式サイトの記事を見ながら進めれば問題ない。
アクセス制限・Digest認証(またはBasic認証)
インストールが終わったら、Redmineへのシンボリックリンクを置いたVirtualHostの設定ファイルを開いてDigest認証(またはBasic認証)をセットする。
redmine のディレクトリは、公開ディレクトリ配下には無いので、Location ディレクティブを使用しないとうまくいかない。
下記の例では、phpmyadmin や、後ほどインストールする awstats などにも同じ認証を掛けるため、チルダ(~)をつけて、正規表現で3つのディレクトリを同時に設定している。
<Location ~ "/(phpmyadmin|redmine|awstats)/"> AuthType Digest AuthUserFile /etc/httpd/.htpasswd AuthName "Please Enter Password" Require valid-user </Location>
SVNの設定
yum install subversion #既にインストール済みのはず yum install mod_dav_svn #davが必要なので、httpd.confでモジュールがロードされているか確認 #なければ追加する vim /etc/httpd/conf/httpd.conf LoadModule dav_module modules/mod_dav.so LoadModule dav_fs_module modules/mod_dav_fs.so LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so #ディレクトリを作成 mkdir /var/www/svn #リポジトリの作成 svnadmin create /var/www/svn/repo #repo以下のすべてのファイルの所有者/グループをapacheに変更 chown -R apache:apache /var/www/svn/repo/ chmod -R u+rw /var/www/svn/repo #http設定ファイルを開き、全行コメントアウトする vim /etc/httpd/conf.d/subversion.conf # <location /svn> # DAV svn # SVNParentPath /var/www/svn # SVNAutoversioning on # # Limit write permission to list of valid users. # #<LimitExcept GET PROPFIND OPTIONS REPORT> # # Require SSL connection for password protection. # # SSLRequireSSL # AuthType Digest # AuthName "Please Enter Password" # AuthUserFile /etc/httpd/.htpasswd # AuthzSVNAccessFile /etc/svn/svnusers # Require valid-user # #</LimitExcept> # </Location> #VirtualHostの設定ファイルに上の設定から必要な部分を写し保存する <location /svn> DAV svn SVNParentPath /var/www/svn SVNAutoversioning on AuthType Digest AuthName "Please Enter Password" AuthUserFile /etc/httpd/.htpasswd AuthzSVNAccessFile /etc/svn/svnusers Require valid-user </Location> #httpdを再起動 service httpd restart #アクセス権限を設定する vim /etc/svnusers [repo:/] ユーザー名=rw
これで、http://ホスト名/svn/リポジトリ名 でアクセス可能なはず。
ポイントは、VirtualHostを使用する場合には /etc/httpd/conf.d/subversion.conf をそのまま使わないことだ。特定のドメインのみからしかリポジトリにアクセスできないように、VirtualHostの設定の方に Location ディレクティブを書き込む。
TortoiseSVNからのアクセスも、Digest認証(またはBasic認証)のユーザー名とパスワードを入力してリポジトリブラウザで確認できる。
Digest認証
Digest認証(もしくはBasic認証)のパスワードファイルの作成や設置方法は通常の方法と変わらないが念のためDigest認証のコマンド例のみ記す。
#パスワードファイルを作成する(最初の一回のみ) /usr/bin/htdigest -c /etc/httpd/.htpasswd 'Please Enter Password' username #所有者とパーミッションの変更 chown apache:apache /etc/httpd/.htpasswd chmod 600 /etc/httpd/.htpasswd #ユーザーの追加 /usr/bin/htdigest /etc/httpd/.htpasswd 'Please Enter Password' username #パスワードの変更 /usr/bin/htdigest /etc/httpd/.htpasswd 'Please Enter Password' username #ユーザーの削除-パスワードファイルを開いて該当行を削除 vim /etc/httpd/.htpasswd
目次
一連の記事の目次は、以下のページにあります。
初心者がさくらのVPSを立ち上げるまで - その1