2011年6月15日水曜日

ServersMan@VPS(debian-32bit)を好き勝手に設定 - その8 - ファイル公開

仲間内でのファイル置き場がほしければ
「その2」で紹介したwebdavを使えば、
だいたいどのOSからでもアクセス可能ですし、
ファイルのバージョン管理もしたければ
専用クライアントが必要ですが、
「その3」で紹介したsvnが便利です。
一方的にファイル公開したいだけなら
ウェブサーバの基本的な機能なので問題が起こりようもないのですが、
ユーザ認証が必要となると少々細工が必要になります。
以下私が行った設定をご紹介します。

まずファイル"/etc/apache2/sites-available/default"の

<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

の部分を

<Directory /var/www/html>
Options All
AllowOverride All
Order allow,deny
allow from all
</Directory>

に変更し、ファイル"/etc/apache2/sites-available/default-ssl"の

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

の部分を

<Directory /var/www/>
Options All
AllowOverride All
Order allow,deny
allow from all
</Directory>

に変更します。それから以下を実行します。

# cd /var/www/html
# mkdir share
# chmod 755 share
# cd share
# touch index.html
# echo "SSLRequireSSL" > .htaccess
# chmod 644 .htaccess

これで"https://<サーバ名>/share/"配下でファイル公開できます。
例えばユーザ"taro"と"hanako"に
"https://<サーバ名>/share/20110401"以下を公開したい場合
以下を実行します。

# cd /var/www/html/share
# mkdir 20110401
# chmod 755 20110401
# cd 20110401
# htpasswd -c .htpasswd taro <パスワード>
# htpasswd .htpasswd hanako <パスワード>
# echo 'SSLRequireSSL' > .htaccess
# echo 'AuthUserFile /var/www/html/share/spice20110122/.htpasswd' >> .htaccess
# echo 'AuthGroupFile /dev/null' >> .htaccess
# echo 'AuthName "20110401"' >> .htaccess
# echo 'AuthType Basic' >> .htaccess
# echo 'require valid-user' >> .htaccess
# chmod 644 .htaccess

shareの下のディレクトリは個別にユーザ設定可能ですので、
好きに運用すればいいでしょう。

0 件のコメント:

コメントを投稿