サーバ構築 Apacheとsubversionの連携設定
先日の記事にて、TortoiseSvnからのアクセスがうまくいかなかったが、それ以前にhttp経由でアクセスできるようにしてから、問題解決しようと思い、まずはhttpd(Apache)にsvn(subversion)を連携させました。
まずは、mod_dav_svn をイントール。
yum install mod_dav_svn
次に、/etc/httpd/conf.d/subversion.conf を編集
<Location /svn>
DAV svn
SVNParentPath /var/www/svn/repo
# Limit write permission to list of valid users.
<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /etc/httpd/conf.d/svn.passwd
Require valid-user
</LimitExcept>
</Location>
/etc/httpd/conf.d/svn.passwd にユーザ一覧とパスワードが登録される事になる。 次はこのファイルの設定。
htpasswd -mc svn.passwd ★非公開009★
パスワードを聞かれるので、入力して設定する。 ★非公開009★
apacheを再起動。 httpdデーモンで動作するので、iptablesのsvnデーモン用のポートをアクセスさせないようにする。 ※”iptables -D~”で削除
/etc/rc.d/init.d/httpd restart
iptables -D RH-Firewall-1-INPUT -p tcp -m tcp --dport cvspserver -j ACCEPT
iptables -D RH-Firewall-1-INPUT -p udp -m udp --dport cvspserver -j ACCEPT
次に、ノートPC側(ローカル)に、適当なフォルダを作成する。 右クリックし、”SVN Checkout” サーバ側のURLと、ノートPC側の作成したフォルダのパスを入力してOK。 成功したらその旨ダイアログBoxが表示される。
サーバ側のURLは、
しかし、ローカルフォルダ内に適当なテキストファイルを作成して、Commitしようとすると、”Can't create directory '/var/www/svn/repo/test/db/transactions/1-1.txn': Permission denied”のエラー発生。。。
色々調べてると、Subversionの情報サイト に、解決方法が記載されていた。 どうも、Apacheを実行しているユーザに対して、リポジトリ内の全てのフォルダ、ファイルへのアクセスを許可する必要があるみたい。
Apacheを実行しているユーザ というのは、恐らく、/etc/httpd/conf/httpd.conf 内、”User”で設定されているユーザの事。 今日のところは、"chmod 777~" を使ってこのユーザ以外も含めて全てのユーザにアクセス許可する。
リポジトリがあるフォルダに移動して、chmod実行 ※-Rは、testフォルダ以下の全てのファイルとフォルダに対しての設定
cd /var/www/svn/repo
chmod 777 test -R
再び、ローカルPCの作成したフォルダから、右クリック⇒SvnCommitを選択すると、ユーザとパスワードを聞いてくるので、htpasswd で作成したユーザとパスワードを入力して 成功!
| 固定リンク
「麻雀ゲーム作成」カテゴリの記事
- 作成途中のゲ-ムをUP(2009.05.16)
- サーバ構築 LinuxのGateway追加(2009.05.11)
- サーバ構築 Emobile解約し、マンションネットへ変更(2009.05.10)
- 今週末か来週くらいにver0.01リリ-ス予定(2009.05.07)
- ホ-ムペ-ジビルダ-を買うか迷い中(2009.04.19)




コメント