そういうのがいいブログ

SIerで働く30代サラリーマンSEがインフラエンジニアに憧れてLinux・クラウド・AWSの勉強をするブログ

CentOS8のApache2.4でバーチャルホスト(1サーバで複数サイト)設定手順【コマンド付き丁寧解説】

※[PR]当ブログの記事の中にはプロモーションが含まれています。

CentOS8のApache2.4でバーチャルホスト


CentOS8のApache2.4でバーチャルホスト(1サーバで複数サイト)設定をする手順を【コマンド付き】で丁寧に解説

CentOSApacheをインストールするところまではできたけれど、バーチャルホストの設定のやり方が分からない、と悩んでいませんか?

前回の記事で、CentOS8.0にApache2.4.37をインストールすることができたので、
次は「バーチャルホスト」の設定をして、1台のCentOSサーバで、複数のウェブサイトのURLが表示できるようにするまでの手順を、
コマンド付きで丁寧に紹介します。

Apacheでバーチャルホストの設定をする手順を解説します。
手順を真似しながら進めれば、1時間弱くらいで簡単にできます

あと、後半では、インフラエンジニアになるためにおすすめの勉強法があれば知りたい、と考えているかたへのおススメ勉強法も書きます。

本記事では、下記の内容を解説します。

  • Apacheのバーチャルホストの設定手順(/etc/httpd/conf.dへ~.confのファイル追加)
  • バーチャルホスト用のディレクトリ作成手順
  • httpdの再起動手順
  • ブラウザでの表示確認
  • インフラエンジニアになるためのおススメの勉強法の紹介

この記事を書いている私は、某SIerに勤務しながら、WEB系エンジニア・インフラエンジニアに憧れて、
プログラミングおよびインフラ技術の勉強をしています。
私が実機で試したコマンドや画像を載せて書いていますので、記事の信頼性担保に繋がると思います。

前回の記事

souiunogaii.hatenablog.com

「/etc/httpd/conf.d」へ設定ファイル「~.conf」の作成

3ファイル作成します

  • virtualhostsv-neptune.conf-virtualhost.conf  ・・・バーチャルホストでないアクセス拒否のため
  • sv-neptune.com.conf ・・・URL「sv-neptune.com」のため
  • sv-neptune.net.conf ・・・URL「sv-neptune.net」のため

バーチャルホストでないアクセス拒否のためのconfファイル

cd /etc/httpd/conf.d
[root@SV-NEPTUNE ~]# cd /etc/httpd/conf.d
[root@SV-NEPTUNE conf.d]# ls -l
合計 20
-rw-r--r-- 1 root root  400 108 06:44 README
-rw-r--r-- 1 root root 2926 108 06:42 autoindex.conf.original_bk
-rw-r--r-- 1 root root  344 108 06:40 manual.conf
-rw-r--r-- 1 root root 1252 108 06:40 userdir.conf
-rw-r--r-- 1 root root  516 108 06:40 welcome.conf.original_bk
vi virtualhostsv-neptune.conf-virtualhost.conf
[root@SV-NEPTUNE conf.d]# vi virtualhostsv-neptune.conf-virtualhost.conf
<VirtualHost _default_:80>
    ServerName any
    <Location />
        Require all denied
    </Location>
</VirtualHost>

URL「sv-neptune.com」のためのconfファイル

vi sv-neptune.com.conf
[root@SV-NEPTUNE conf.d]# vi sv-neptune.com.conf
## VirtualHost01 sv-neptune.com
<VirtualHost *:80>
ServerName sv-neptune.com
ServerAlias www.sv-neptune.com
ServerAdmin webadmin@sv-neptune.com
DocumentRoot "/home/www/html/sv-neptune.com"
 
<Directory "/home/www/html/sv-neptune.com">
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Allow from all
</Directory>
 
ErrorLog logs/sv-neptune.com-error_log
CustomLog logs/sv-neptune.com-access_log combined
</VirtualHost>

URL「sv-neptune.net」のためのconfファイル

vi sv-neptune.net.conf
[root@SV-NEPTUNE conf.d]# vi sv-neptune.net.conf
## VirtualHost02 sv-neptune.net
<VirtualHost *:80>
ServerName sv-neptune.net
ServerAlias www.sv-neptune.net
ServerAdmin webmaster@sv-neptune.net
DocumentRoot "/home/www/html/sv-neptune.net"
 
<Directory "/home/www/html/sv-neptune.net">
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Allow from all
</Directory>
 
ErrorLog logs/sv-neptune.net-error_log
CustomLog logs/sv-neptune.net-access_log combined
</VirtualHost>

「/home/www/html」配下にそれぞれのURL用ディレクトリ作成

cd /home/www/html
mkdir /home/www/html/sv-neptune.com
mkdir /home/www/html/sv-neptune.net
[root@SV-NEPTUNE conf.d]# cd /home/www/html
[root@SV-NEPTUNE conf.d]# mkdir /home/www/html/sv-neptune.com
[root@SV-NEPTUNE conf.d]# mkdir /home/www/html/sv-neptune.net
[root@SV-NEPTUNE html]# ls -l
合計 4
-rw-r--r-- 1 www  www  10  14 21:26 index.html
drwxr-xr-x 2 root root  6  15 01:47 sv-neptune.com
drwxr-xr-x 2 root root  6  15 01:47 sv-neptune.net

それぞれのディレクトリ配下にテスト用「index.html」作成

「sv-neptune.com」用の「index.html」作成

vi /home/www/html/sv-neptune.com/index.html
[root@SV-NEPTUNE html]# vi /home/www/html/sv-neptune.com/index.html
test
sv-neptune.com

「sv-neptune.net」用の「index.html」作成

vi /home//home/www/html/sv-neptune.net/index.html
[root@SV-NEPTUNE html]# vi /home/www/html/sv-neptune.net/index.html
test
sv-neptune.net

「chown」でディレクトリの所有者変更

chown -R www:www /home/www/html/
[root@SV-NEPTUNE html]# chown -R www:www /home/www/html/
[root@SV-NEPTUNE html]# ls -l
合計 4
-rw-r--r-- 1 www www 10  14 21:26 index.html
drwxr-xr-x 2 www www 24  15 01:49 sv-neptune.com
drwxr-xr-x 2 www www 24  15 01:49 sv-neptune.net

設定ファイル「httpd.conf」のテスト

httpd- -t
[root@SV-NEPTUNE html]# httpd -t
Syntax OK

設定反映のためにhttpdの再起動とステータス確認

systemtctl restart httpd
[root@SV-NEPTUNE html]# systemtctl restart httpd
systemctl status httpd
[root@SV-NEPTUNE html]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor prese>
   Active: active (running) since Sun 2020-01-05 01:51:18 JST; 11s ago
     Docs: man:httpd.service(8)
 Main PID: 19431 (httpd)
   Status: "Running, listening on: port 80"
    Tasks: 213 (limit: 11141)
   Memory: 32.2M
   CGroup: /system.slice/httpd.service
           tq19431 /usr/sbin/httpd -DFOREGROUND
           tq19433 /usr/sbin/httpd -DFOREGROUND
           tq19434 /usr/sbin/httpd -DFOREGROUND
           tq19435 /usr/sbin/httpd -DFOREGROUND
           mq19436 /usr/sbin/httpd -DFOREGROUND

 105 01:51:18 SV-NEPTUNE systemd[1]: Stopped The Apache HTTP Server.
 105 01:51:18 SV-NEPTUNE systemd[1]: Starting The Apache HTTP Server...
 105 01:51:18 SV-NEPTUNE httpd[19431]: Server configured, listening on: port>
 105 01:51:18 SV-NEPTUNE systemd[1]: Started The Apache HTTP Server.

アクセス元のPCのhotstファイル編集

下記ファイルをメモ帳で開いて編集

C:\Windows\System32\drivers\etc\hosts
192.168.1.105       sv-neptune
192.168.1.105       sv-neptune.com
192.168.1.105       www.sv-neptune.com
192.168.1.105       sv-neptune.net
192.168.1.105       www.sv-neptune.net

ブラウザChromeで表示確認

バーチャルホストでないアクセスは拒否

ブラウザChromeで表示確認

「sv-neptune.com」

ブラウザChromeで表示確認

「sv-neptune.net」

ブラウザChromeで表示確認

別名「www.sv-neptune.com」

ブラウザChromeで表示確認

別名「www.sv-neptune.net」

ブラウザChromeで表示確認

参考にしたサイト

www.rem-system.com

www.idcf.jp

インフラエンジニアになるための勉強のやり方

私は、某SIerに勤務しながら、WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。

現在の会社で直接担当している業務の中では、決まった技術しか触れないけれど、
「他にも将来役に立ちそうなインフラ技術を勉強したい」「働きながらでもできる効率的なインフラエンジニアの勉強方法を知りたい」と考えている方のために、
①おすすめの書籍と、②おススメのオンライン学習サイト、③おすすめのエンジニアスクールを紹介します。

働きながら勉強するための、おススメの書籍と、オンラインで学習できるサイトの紹介です。

インフラエンジニアの勉強ができるおススメ書籍

朝の通勤時や帰宅時の電車の中や、社外打合せへの**移動中などに勉強するなら、やはり書籍が一番**だと思います。

インフラエンジニアの教科書

LINE社に創業時から在籍しているインフラエンジニア・プロマネの「佐野裕」さんの本です。
twitter.com

膨大なトラフィックをさばくLINE社にて構築・保守を行っている現役エンジニアが記すITインフラの必須知識と経験の数々!
サーバ、OS、ネットワーク機器、データセンター、購買と商談、障害対応、大規模インフラ、成長するために必要なスキルなど、基礎知識から実践まで言及。
ITインフラの世界が理解できる珠玉の1冊!

インフラエンジニアの教科書
(C&R研究所)
佐野裕

1週間でLPICの基礎が学べる本

Linuxの資格「LPIC」の試験対策を初心者向けに書いた入門書です。

Linuxの資格として広く知られているLPICですが、あまり知識の無いまま試験対策を始める人も多いのではないでしょうか。しかし、試験対策書は試験範囲についてのみ解説しているものが多く、初心者が理解するのは困難です。本書は、初心者がスムーズに試験対策を行えるよう、事前に基礎固めを行うLinux入門書です。試験情報や模擬問題も掲載しているので、資格取得を視野に入れた効率的な基礎学習が行えます。

1週間でLPICの基礎が学べる本
第3版 徹底攻略シリーズ
(インプレス)
中島能和

インフラエンジニアの勉強ができるオンライン学習サイト

Udemy (オンライン動画学習サイト)

Udemy(ユーデミー)は、オンラインで動画で学習できるサービスです。
ITエンジニア系の講座もたくさん公開されています。

≫Udemy 世界最大級のオンライン学習サイト

Udemyの特徴

  • ユーザー登録すれば、第1回の講座は無料で視聴できる
  • 無料のコンテンツもある
  • 過去に受講した人の人数や、受講した人の評価も表示されるので選びやすい

≫Udemy 世界最大級のオンライン学習サイト


開発の人気オンラインコース


インフラエンジニアの勉強ができる専門スクール

リナックスアカデミー(ITエンジニア専門スクール)

スクールというと、昼間働いている人には難しいかもしれませんが、
以下に紹介するスクールには、
Linuxサーバとネットワークとを両分野ともに学べるコースが、
夜間・土日での5か月~7か月の期間で用意されています。

リナックスアカデミー(ITエンジニア専門スクール) http://www.linuxacademy.ne.jp


リナックスアカデミーの特徴

  • 初心者でも最短4週間でエンジニアになれる「IT教育専門機関」
  • 100%ライブ抗議の「少人数クラス担任制」
  • 実務スキルを身につける「PBL(Project Based Learning)」が充実
  • 圧倒的な合格実績と「合格保証制度」
  • 就職実績と「就職・転職サポート」が充実

リナックスアカデミーが選ばれ続ける最大の理由、それはIT技術に特化した日本初のIT教育専門機関だからということです。他を寄せ付けないカリキュラムと講師の質で日本No.1のオープンソース専門スクールだと認知されています。
スクールとしては世界で初めてLPI(Linux技術者認定機関)プラチナスポンサーに加盟し、LPI-Jアカデミック認定校第一号スクール、OSS-DBアカデミック認定校第一号スクール、PostgreSQL CE認定校、国内唯一のPHP技術者育成認定校Zend Authorized Training Center など、数々の認定を受けています。 先日来日したLPIC資格試験の開発責任者であるMatthew Rice氏にも、「世界でNo.1と言われる日本の市場で、リナックスアカデミーはNo.1のスクールだと言われている。それは素晴らしいことだ」という言葉を頂いています。

リナックスアカデミー(ITエンジニア専門スクール)の資料請求(無料)について詳しく見てみる

以上、読んでいただきありがとうございました。