さくらのVPSでCentOS7のサーバーを構築する その6

このブログでは以前にVMware上でCentOS7のサーバーを構築する手順を解説しましたが、今度はさくらのVPSを使ってサーバーを構築します。6回目となる今回は、ユーザーのホームディレクトリ配下にWEBサイトを構築できるような設定を行います。

本編の目次

  • サーバーコントロールパネルへのログイン~サーバー起動まで(第1回)
  • サーバーへログイン~初回起動時に行う設定
  • SSHログインについて
  • SELinuxの有効化(第2回)
  • 一般ユーザーの作成
  • sudoの有効化
  • SSH経由でのrootログイン禁止設定(第3回)
  • 公開鍵認証の導入
  • ファイアウォール(Firewalld)の設定(第4回)
  • SSHのポート番号変更とSELinux
  • WEBサイト公開用ユーザーの作成とChrootの設定(第5回)
  • Apacheのインストールと設定
  • ユーザーのホームディレクトリ配下にあるpublic_htmlを公開する(第6回)
  • バーチャルホストの設定
  • PHPのインストールと設定(第7回)
  • PHPのCGIモード化
  • MySQLのインストールと設定(第8回)
  • phpMyAdminのインストールと設定(第9回)
  • WordPressを使うためのMySQLの設定(第10回)
  • WordPressのインストール

ユーザーのホームディレクトリ配下にあるpublic_htmlを公開する

ここでは各ユーザーのホームディレクトリ配下にあるpublic_htmlディレクトリを公開し、各ユーザーがそこにWEBサイトを構築できるような設定を行います。Apacheインストール時は公開したいファイルを/var/www/html以下に置くことになっていますが、今回行う設定が完成すれば、各ユーザーは自分の管理下のディレクトリにファイルを置けばWEBサイトを構築できるようになります。

それでは早速設定に入りましょう。まずはSELinuxの設定を変更します。以下のコマンドを打っていってください。

詳細は3.3. Boolean – RedHat Customer Portalなども参照のこと

次にApacheの設定を変更します。

設定ファイルを開いたら、以下の記述を編集します。

編集し終わったら保存し、設定ファイルの文法チェックを行ってからApacheを再起動しましょう。

ここまで終わったら、ユーザーディレクトリにあるpublic_htmlに適当な内容のindex.htmlを配置し、以下のURLにアクセスしてみましょう。なお、hogeは任意のユーザー名です。

index.htmlの中身がきちんと表示されれば、設定成功です。

バーチャルホストの設定

ユーザーディレクトリ配下にWEBサイトを構築できるようになったところで、バーチャルホストの設定を行います。(名前ベース)バーチャルホストを使えば、1個のIPアドレスで複数のドメイン名のWEBサイトを運用できるようになるので、是非マスターして1サーバーでも複数のWEBサイトを運営できるようになりましょう。また、複数のユーザーが別々にWEBサイトを構築する場合も、バーチャルホストの設定ができると便利です。

デフォルトではバーチャルホスト用の設定ファイルは存在しないので、自分で作成する必要があります。私は/etc/httpd/conf.d/vhosts.confに設定ファイルを作成します。

設定ファイルを作成したら、バーチャルホストの設定を書いていきます。

一番上のNameVirtualHostディレクティブは、名前ベースバーチャルホストを使用する時に必ず必要になるものです。サーバーで使用するIPアドレス(*でもOK)とポート番号(80番)を指定します。

その後に<VirtualHost *:80>ブロックであるバーチャルホストに関するディレクティブを囲います。バーチャルホストの設定では、最低限次のディレクティブを書く必要があります。

  • ServerName …どのドメイン名(ホスト名)を処理するのかを指定
  • DocumentRoot …ServerNameで指定したドメイン名(ホスト名)のコンテンツの在り処(ドキュメントルート)を指定
また、別名でもアクセスできるようにしたい場合は、その別名をServerAliasディレクティブで指定します。他にも可能な設定はありますが、その辺はまた別の機会に解説します。今回はとりあえず動けばいいというスタンスで設定します。設定を書き終えたら保存し、文法チェックの後にApacheを再起動しましょう。

再起動後に、バーチャルホストの設定ファイルで指定したドメイン名でサーバーにアクセスし、コンテンツが正しく表示されれば成功です。

このブログを応援する・寄付する

当ブログでは暗号通貨による寄付を募っております。

Bitcoin:

Monacoin:

Litecoin: