■FreeBSD10.1-RC4にApache2.4をインストールしてみた。
apache2.2系を入れないように注意しましょう。
$ pkg search ^apache2
apache22-2.2.29_2
apache22-event-mpm-2.2.29_2
apache22-itk-mpm-2.2.29_2
apache22-peruser-mpm-2.2.29_2
apache22-worker-mpm-2.2.29_2
apache24-2.4.10_2
■プロキシを経由してインストールするので、「sudo」は使わない。
$ su root -c ' pkg install -y apache24'
■所有ユーザ、グループは「www」
$ grep ^www /etc/passwd /etc/group | awk -F\: '{print $1,$2}'
/etc/passwd www
/etc/group www
[e-honda@bsd10 ~]$
■起動してみる。
$ pkg info -l apache24 | grep rc.d/apache2
/usr/local/etc/rc.d/apache24
$ grep apache.*_enable /usr/local/etc/rc.d/apache24 | head -1
$ echo 'apache24_enable="YES"' | sudo tee -a /etc/rc.conf
apache24_enable="YES"
$ sudo /usr/local/etc/rc.d/apache24 start
$ netstat -an | awk '/tcp4/ && /.80/{print}'
tcp4 0 0 *.80 *.* LISTEN
■確認してみる。
$ w3m -no-proxy -dump 192.168.41.128
It works!
$ w3m -no-proxy -dump 127.0.0.1
It works!
■gsedをインストール。
Ctrl+v Ctrl+m で改行コードを入れたり、
実際にエスケープして改行したりするのが面倒なので。
$ pkg search gsed
gsed-4.2.2
$ su root -c 'pkg install -y gsed'
$ echo "111" | gsed s/"."/"&\n"/g
1
1
1
■名前でアクセスする際のサーバ名を定義する。
$ sudo gsed -i s%"#ServerName.*\$"%"&\nServerName `hostname -f`:80"% /usr/local/etc/apache24/httpd.conf
$ grep ^ServerName /usr/local/etc/apache24/httpd.conf
ServerName bsd10.localdomain:80
$ sudo /usr/local/etc/rc.d/apache24 restart
■名前でアクセスするクライアントにサーバ名を定義する。
「/etc/hosts」に入れる。
$ /sbin/ifconfig | \
awk '/inet 192.168.41./{print "echo "$2,"`hostname -f`"}' | sh
192.168.41.128 bsd10.localdomain
$ w3m -dump -no-proxy http://bsd10.localdomain
It works!