Prev / Next / /home/pochi/ChangeLog

Ubuntu での Apache の初期設定[Ubuntu]

2012-05-05

とりあえずやったこと。

apache2 をインストール

sudo apt-get install apache2


基本設定の修正

cd /etc/apache2/
sudo cp -p apache2.conf apache2.conf.dist
sudo vi apache2.conf


diff -u apache2.conf.dist apache2.conf は以下。

-KeepAlive On
+KeepAlive Off

...
<IfModule mpm_prefork_module>
...
- MaxClients 150
+ MaxClients 20
...
- MaxRequestsPerChild 0
+ MaxRequestsPerChild 100
</IfModule>
...


アクセスが膨大になったときに困らないように設定。
KeepAlive は On のほうがパフォーマンス的には良いけど、
DDoSっぽいアクセスがあると酷いことになるので。
その対策。

userdirモジュールをロードするようにする。

cd /etc/apache2/mods-enabled
sudo ln -s ../mods-available/userdir.load .


でも userdir の conf は sites-enabled 以下のファイルに書く。
なので userdir.conf はリンクしない。

サイトの本体は、vhost に持たせるようにする。

sudo mkdir /var/vhost
sudo mkdir /var/vhost/www.pochi.cc
sudo mkdir /var/vhost/www.pochi.cc/htdocs
sudo mkdir /var/vhost/www.pochi.cc/logs


cd /etc/apache2/sites-enabled/
sudo cp 000-default 001-www.pochi.cc
sudo vi 001-www.pochi.cc


diff -u 000-default 001-www.pochi.cc ↓

<VirtualHost *:80>
+ ServerName www.pochi.cc
- ServerAdmin webmaster@localhost
+ ServerAdmin *****@pochi.cc

- DocumentRoot /var/www
+ DocumentRoot /var/vhost/www.pochi.cc/htdocs

- <Directory /var/www/>
+ <Directory /var/vhost/www.pochi.cc/htdocs/>
...
+ UserDir public_html
+ UserDir disabled root
+
+ <Directory /home/*/public_html>
+ AllowOverride FileInfo AuthConfig Limit Indexes Options
+ Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec ExecCGI
+ <Limit GET POST OPTIONS PROPFIND>
+ Order allow,deny
+ Allow from all
+ </Limit>
+ <LimitExcept GET POST OPTIONS PROPFIND>
+ Order deny,allow
+ Deny from all
+ </LimitExcept>
+ </Directory>

- ErrorLog ${APACHE_LOG_DIR}/error.log
+ ErrorLog "|/usr/sbin/rotatelogs /var/vhost/www.pochi.cc/logs/error.log.%Y%m%d 86400 540"

- CustomLog ${APACHE_LOG_DIR}/access.log combined
+ CustomLog "|/usr/sbin/rotatelogs /var/vhost/www.pochi.cc/logs/access.log.%Y%m%d 86400 540" combined

permlink