Apacheとphpのインストール
※ Ubuntu 10.04に対応するよう書き換え済み
root@localhost:~# apt-get install apache2
root@localhost:~# apt-get install php5
Apacheサービスを実行しているユーザと、所属するグループは、次のように指定されている。
/etc/apache2/envvars
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
この環境変数を、apacheの設定ファイルで用いている
/etc/apache2/apache2.conf
# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
このユーザはログインできるように設定されているため、ログインできないように変更する。
root@localhost:~# cat /etc/passwd | grep -e www-data
www-data:x:33:33:www-data:/var/www:/bin/sh ← 現在状況の表示
root@localhost:~# usermod -s /usr/sbin/nologin www-data
バーチャルサイトの基本的な設定を行う
/etc/apache2/sites-available/default
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory /var/www/>
# Options Indexes FollowSymLinks MultiViews
Options Includes ExecCGI FollowSymLinks← SSI, CGIを有効化。ディレクトリ表示を無効化した
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
CGI (Perl) スクリプトの実行を許可
/etc/apache2/mods-available/mime.conf
#AddHandler cgi-script .cgi
AddHandler cgi-script .cgi
SSI (shtml) の有効化
念のため、次の設定がコメントアウトされていないか確認しておく
/etc/apache2/mods-available/mime.conf
# To parse .shtml files for server-side includes (SSI):
# (You will also need to add "Includes" to the "Options" directive.)
#
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
includeモジュールを有効化する
(a2enmodはパラメータ無しで起動すると、選択できるモジュール一覧が表示される)
root@localhost:~# a2enmod include
Enabling module include.
Run '/etc/init.d/apache2 restart' to activate new configuration!
PHP用 Pear拡張リポジトリをインストール
root@localhost:~# apt-get install php-pear