labunix's blog

labunixのラボUnix

FreeBSD10.1-RC4にApache2.4をインストールしてみた。

■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
# apache24_enable (bool):      Set to "NO" by default.

$ 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!