今週夏休みを取得しました。取り立てて遠出する予定はなかったが、有意義に過ごすことが出来たと思う。但し、リラックスしすぎて久しぶりにブログを更新しようとしたのだが、ネタが思い浮かばなかった。。。
すまん。嘘だ。本当はネタなんて鮮度の良さそうなものではなく、「わからない事が多すぎて、訳がわからない」状態に陥ってしまっている。まともなエンジニアになる為の道はまだまだ険しそうだ。とりあえず今日のテーマは以下の感じで展開する。
Virtualhostを設定してapacheを運用する
【今日のお台】
サーバA→ifcfg-eno0 172.20.1.10 (unknown.com)
→ifcfg-eno0:1 172.20.1.20 (engineer.com)
こんな感じでLinux 7とapache2.4.20を設定していこうと思う。
複数IPの設定
まずは複数IPを設定する。なんだかんだでCent7に複数IP設定するの初めてなんだが…
#cd /etc/sysconfig/network-script/ #cp -p ifcfg-eno0 ifcfg-eno0:1 #vi ifcfg-eno0:1 TYPE="Ethernet" BOOTPROTO="none" DEFROUTE=no IPV4_FAILURE_FATAL="yes" NAME="eno0:1" DEVICE="eno0:1" ONBOOT=yes DNS1="*.*.*.*" DOMAIN="engineer.com" DNS2=*.*.*.* IPADDR=172.20.1.20 PREFIX=16 #systemctl restart network
nmcliなりifcfgで確認して、反映されてればおk。最初、systemctl restart NetworkManagerを実行したけど、反映されなくてOSを再起動してました。たぶん、nmcli使って変更しないと、NetworkManagerのリスタートじゃ反映されないんだろうかね。CentOS7についてはそのうちちゃんと調べるつもりなので、今はシカトで。。
apacheの設定
#cd /usr/local/apache2/conf #vi httpd.conf ----中略----- Listen 172.20.1.10:80 Listen 172.20.1.20:80 ----中略----- # Virtual hosts Include conf/extra/httpd-vhosts.conf
extraディレクトリ以下の、httpd-vhosts.confを使うので、httpd.confの該当箇所コメントアウトを外します。後、Listenに新しくVirtualhostに設定するIPを記述します。これ忘れるとアクセス出来ないので注意。
でお次は以下ファイルを編集します。ざっくりの設定は以下ですが、詳細はサーバごとに変えてください。
<VirtualHost 172.20.1.10:80> DocumentRoot "/usr/local/apache2/htdocs/unknown/" ServerName unknown.com ServerAlias unknown1.example.com ErrorLog "logs/unknown-error_log" CustomLog "logs/unknown-access_log" common DirectoryIndex index.html index.htm index.php <Directory "/usr/local/apache2/htdocs/unknown/"> AddType text/xml .rdf AddType text/html .shtml .inc AddOutputFilter INCLUDES .shtml .inc Options Includes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost> <VirtualHost 172.20.1.20:80> DocumentRoot "/usr/local/apache2/htdocs/engineer/" ServerName engineer.com ServerAlias engineer1.example.com ErrorLog "logs/engineer_log" CustomLog "logs/engineer-access_log" common DirectoryIndex index.html index.htm index.php <Directory "/usr/local/apache2/htdocs/engineer/"> AddType text/xml .rdf AddType text/html .shtml .inc AddOutputFilter INCLUDES .shtml .inc Options Includes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
こんな感じで各々のサイトにアクセスできればオッケーです。