ユーザディレクトリ内にpublic_htmlというサブディレクトリを作り、一般ユーザが自分 のホームページを公開できるように Apache2 の設定を変更してみます。チルダ「~」なしでもアクセスできるようにしておきます(実際には http://サーバIP/~user/ や http://サーバIP/user/ でアクセス可能になります)。
とにかくまずはオリジナル設定ファイルのバックアップからスタート。
# cd /etc/apache2/mods-available/
# cp userdir.conf userdir.conf.org
エディタを起動します。
# sudo gedit /etc/apache2/mods-available/userdir.conf
一時的にrootアカウントになってエディタを起動しています。
■Apache2設定ファイル変更の続き
1) .httpaccess ファイルによる設定変更を全て許可する。
2) ディレクトリ public_html 以下で CGI の実行を許可する。
3) index.html が存在しない場合にファイル一覧が表示されないようにする。
----------------------------------------------------------------------
UserDir public_html
UserDir disabled root
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
↓↓
UserDir public_html
UserDir disabled root
# phpmyadmin をインストールしている場合には、この行も必要!
AliasMatch ^/phpmyadmin/?(.*) /var/www/phpmyadmin/$1
# phppgadmin をインストールしている場合には、この行も必要!
AliasMatch ^/phppgadmin/?(.*) /usr/share/phppgadmin/$1
# http://www.foo.com/user/ , http://www.foo.com/~user/ どちらでもアクセス可能とする
AliasMatch ^/([a-zA-Z0-9]+)/?(.*) /home/$1/public_html/$2
AllowOverride All
Options ExecCGI MultiViews SymLinksIfOwnerMatch IncludesNoExec
----------------------------------------------------------------------
userdir モジュールを有効にする。
# a2enmod userdir
Apache2 を再起動します。
# /etc/init.d/apache2 restart
■動作確認
一般ユーザアカウントに戻って、つぎの作業を実行する。
1)自分のホームディレクトリ内にpublic_htmlディレクトリを作成。
2)テスト用ファイルを作成する。たとえば、
-------------------
test
-------------------
このファイルにindex.htmlと名付けて、public_htmlディレクトリに保存する。
ブラウザを起動し、URLに localhost/~ユーザアカウント名を入力し、画面上にtestと表示されれば設定変更は成功です。
0 件のコメント:
コメントを投稿