Webサーバ、DNSサーバのまとめ
最終的な微調整を兼ねたまとめです。
bindの外部向け設定
最終的なbindの外部向け設定はこんな感じです。(現時点での最終的ということでたぶん全然最終的じゃないと思いますが)
$ sudo nano /etc/bind/db.5-55.jp
$TTL 86400 @ IN SOA 5-55.jp. root.5-55.jp.( 2008041801; 28800; 14400; 3600000; 86400 ); IN NS ns1.5-55.jp. IN NS ns.maihama-net.com. ; セカンダリネームサーバ(マイハマネット) IN MX 10 mail.5-55.jp. ns1 IN A 219.117.201.xxx ; サーバの固定IPを指定 ns1.5-55.jp mail IN A 219.117.201.xxx ; mail.5-55.jp 2 IN A 219.117.201.xxx ; 2.5-55.jp @ IN A 219.117.201.xxx ; 5-55.jp * IN A 219.117.201.xxx ; *.5-55.jp
うちの今のところの構成だと、たぶん「*」1つあれば他の指定はいらないような気がしますが、ま、将来的にグローバルIPを複数とってサーバの負荷分散をするかもしれないので、一応残しておきます。
このゾーン情報を書き換える場合はシリアル番号(2008041801)をいまより大きい数字にしないとDNSで問合せが来たとき、変更がないとみなされゾーン情報が返されませんので要注意。シリアル番号は「更新日付+数字」にするのが慣例みたいです。あと、bindの再起動も忘れずに。
$ sudo /etc/init.d/bind9 restart * Stopping domain name service... bind ...done. * Starting domain name service... bind ...done.
Webサーバの設定
「5-55.jp」をサポートするようにしたので、バーチャルホストの設定を変更しました。
$ sudo nano /etc/apache2/sites-available/my_site
NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot /home/www ServerName 5-55.jp ServerAdmin root@5-55x.jp ServerSignature On LogLevel warn ErrorLog /home/log/apache2/5-55.jp.error.log CustomLog /home/log/apache2/5-55.jp.access.log combined ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ Alias /doc/ "/usr/share/doc/" </VirtualHost> <VirtualHost *:80> DocumentRoot /home/www/2 ServerName 2.5-55.jp ServerAdmin root@5-55x.jp ServerSignature On LogLevel warn ErrorLog /home/log/apache2/2.5-55.jp.error.log CustomLog /home/log/apache2/2.5-55.jp.access.log combined ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ Alias /doc/ "/usr/share/doc/" </VirtualHost> <VirtualHost *:80> DocumentRoot /home/www/vote ServerName vote.satake7.net ServerAdmin mam@satake7x.com ServerSignature On LogLevel warn ErrorLog /home/log/apache2/vote.error.log CustomLog /home/log/apache2/vote.access.log combined ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ Alias /doc/ "/usr/share/doc/" </VirtualHost>
ホスト名解決しないデフォルトは「/home/www」へ飛ばすようにしました。「http://2.5-55.jp」は「/home/www/2」へ飛ばします。このあたりの構成も後々変更します。これを書き換えたあとは、apache2のリロードを忘れずに。
$ sudo /etc/init.d/apache2 reload * Reloading web server config apache2 4368 ...done.
アクセスログの確認
ちゃんと意図した通りアクセスが振り分けられるか、ブラウザからアクセスしてみてそれをアクセスログで確認します。
$ tail -f /home/log/apache2/5-55.jp.access.log "GET / HTTP/1.1" 200 69 "-" "Firefox/2.0.0.13" "GET /favicon.ico HTTP/1.1" 404 307 "-" "Firefox/2.0.0.13" "GET / HTTP/1.1" 304 - "-" "Firefox/2.0.0.13" "GET /favicon.ico HTTP/1.1" 404 306 "-" "Firefox/2.0.0.13" "OPTIONS / HTTP/1.1" 200 - "-" "Microsoft-WebDAV-MiniRedir/5.1.2600" "PROPFIND /_svn HTTP/1.1" 405 329 "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"
動作はいいようですが、「GET /favicon.ico HTTP/1.1 404 307」という見慣れないエラーが出ている模様。これは文字通り「favicon.ico」アイコンがないよということらしいので、/home/wwwに適当なアイコン(16x16)を置くとこのエラーは出なくなりました。
最後の2行はその作業のため、Sambaフォルダを使ったときのものです。(Sambaを使ったから出たというより、TortoiseSVNのアイコンオーバーレイマネージャがSambaフォルダを検索対象にしたため出たみたいです)
参考
- HTTPのエラーに関しては、こちら(→ホーム2 - 私のブログ)が参考になりました。
- WebsiteのTestには、こちら(→Free Monitoring Test Tools by WebSitePulse)。遅いですけど、外部からの確認が必要なときは便利です。
以上でこの項、ひとまず終わり。