GNU/Linux >> Linux の 問題 >  >> Linux

CentOSで仮想ホストを設定する

仮想ホスト(vhosts)は、単一のサーバーまたはインターネットプロトコル(IP)アドレスを使用して複数のドメインにサービスを提供するために使用されます。その特定のサイトのホストファイルに設定されている内容に応じて、さまざまなページが表示されます。サーバーに必要な数の仮想ホストを追加できます。この記事では、CentOS®でvhostを作成する手順について説明します。

注: domain.comのインスタンスを置き換えます この記事では、サイトのドメイン名を使用します。

CentOSのVhost構成の前提条件

この記事では、ドメインがサイトを指すようにドメインネームサービス(DNS)を構成しているか、テスト目的でドメインをサーバーに向けるためにコンピューター上のローカルホストファイルを使用していることを前提としています。

vhostを構成するには、サーバーにApache®がインストールされている必要があります。次のコマンドを実行してApacheをインストールします。

sudo yum install httpd

注: サーバーのファイアウォールがポート80でHTTPトラフィックを許可するように構成されていることを確認します。

CentOSでvhostディレクトリを作成します

  1. 次のコマンドを使用して、新しいディレクトリを作成します。

    sudo mkdir -p /var/www/vhosts/domain.com/public_html
    

    このディレクトリは、サイトのWebコンテンツを保存するために使用されます。これはドキュメントルートとして知られています Apache vhost内の場所 構成ファイル。 -pを使用する 新しいディレクトリの親を自動的に追加します。

  2. 次のコマンドを使用して、新しいディレクトリに必要な権限を設定します。

    sudo chown -R username:vhostuser /var/www/vhosts/domain.com/public_html
    

注: vhostuserを置き換えます username:vhostuser内 新しいディレクトリへのアクセス権を持つ必要があるユーザーと。

次を使用して、vhostsディレクトリ内のファイルのすべてのユーザーに読み取りアクセスを許可します。

sudo chmod -R 755 /var/www/vhosts/
仮想ホストファイルを構成します
  1. httpd.confを開きます viのファイル 次のコマンドを使用したテキストエディタ:

    sudo vi /etc/httpd/conf/httpd.conf
    
  2. ファイルの最後に次の行を挿入します。

    Include vhost.d/*.conf

    このアクションにより、Apacheは .confで終わるすべてのファイルを読み取るように設定されます /etc/httpd/vhost.d内 ディレクトリ。

  3. 構成ファイルを保存して終了します。

  4. 次のコマンドを使用して、vhost構成ファイルのディレクトリを作成します。

    sudo mkdir /etc/httpd/vhost.d/
    
  5. 次のコマンドを使用して、将来の仮想ホストを作成できるvhostテンプレートを作成します。

    touch /etc/httpd/vhost.d/default.template
    
  6. default.templateを開きます viのファイル 次のコマンドを使用して:

    vi /etc/httpd/vhost.d/default.template
    
  7. /etc/httpd/vhost.d/default.template内に次のコードを挿入します ファイル:

    <VirtualHost *:80>
    
      ServerName domain.com
    
      ServerAlias www.domain.com
    
      DocumentRoot /var/www/vhosts/domain.com/public_html
    
      <Directory /var/www/vhosts/domain.com/public_html>
    
               Options Indexes FollowSymLinks MultiViews
    
               AllowOverride All
    
       </Directory>
    
    
    
    CustomLog /var/log/httpd/domain.com-access.log combined
    
    ErrorLog /var/log/httpd/domain.com-error.log
       # Possible values include: debug, info, notice, warn, error, crit,
    
       # alert, emerg.
    
       LogLevel warn
    
    </VirtualHost>
    
    #<VirtualHost _default_:443>
    
    #        ServerName example.com
    
    #        DocumentRoot /var/www/vhosts/domain.com/public_html
    
    #        <Directory /var/www/vhosts/domain.com/public_html>
    
    #                Options Indexes FollowSymLinks MultiViews
    
    #                AllowOverride All
    
    #        </Directory>
    #        CustomLog /var/log/httpd/example.com-ssl-access.log combined
    
    #        ErrorLog /var/log/httpd/example.com-ssl-error.log
         # Possible values include: debug, info, notice, warn, error, crit,
    
         # alert, emerg.
    
    #        LogLevel warn
    #        SSLEngine on
    
    #        SSLCertificateFile    /etc/ssl/certs/domain.crt
    
    #        SSLCertificateKeyFile /etc/ssl/certs/domain.key
    #</VirtualHost>
    
  8. ファイルへの変更を保存し、viを終了します 。

vhostファイルを作成し、Apacheサービスを再起動します

  1. /etc/httpd/vhost.d内にvhostファイルを作成します 次のコマンドを使用してディレクトリを作成します:

    sudo cp /etc/httpd/vhost.d/default.template /etc/httpd/vhost.d/domain.com.conf
    
  2. domain.com.confを開きます viのファイル 次のコマンドを使用して:

    sudo vi /etc/httpd/vhost.d/domain.com.conf
    
  3. ファイルへの変更を保存し、viを終了します 。

  4. 次のコマンドを実行して、Apacheを再起動します。

    sudo service httpd restart
    

    次のメッセージが表示されます:

     Stopping httpd:                                                                                                [OK]
     Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 0000:0000:0000:0000:0000:0000:0000:0000 for ServerName
                                                                                                                    [OK]
    

これは無視できるデフォルトの警告です。

これで仮想ホストがセットアップされ、使用できるようになりました。 WebコンテンツをDocumentRootにアップロードする必要があります ブラウザを使用してドメイン名に移動したときにコンテンツを提供するためにサーバー上に作成したディレクトリ。


Linux
  1. CentOS7でApache仮想ホストを構成する

  2. CentOSNGINX仮想ホストを作成する

  3. Centos 7:vim を構成する

  1. Ubuntu18.04でApache仮想ホストを設定する方法

  2. CentOSでApache仮想ホストを設定する方法

  3. / etc / hostsを補完するユーザー固有のHostsファイルを作成しますか?

  1. Ubuntu20.04でApache仮想ホストを設定する方法

  2. CentOS7でApache仮想ホストを設定する方法

  3. CentOS8でApache仮想ホストを設定する方法