Apache の一般的な仮想ホスト設定方法の分析

Apache の一般的な仮想ホスト設定方法の分析

1. Apacheサーバーのインストールと設定

yum インストール httpd -y

systemctl で httpd を開始し、systemctl で httpd を有効にします。

systemctl 停止 ファイアウォール

setenforce 0 // selinux セキュリティ レベルを前提条件に設定すると、再起動は失敗します。

ローカルの Windows ブラウザを使用して、仮想マシンの IP アドレスをテストします (ファイアウォールを必ずオフにしてください)。次のインターフェイスが表示された場合、HTTP が正常に開始されたことを意味します。

2. Apache2設定ファイル

httpdがインストールされると、/etc/httpdディレクトリが自動的に生成されます。

メイン設定ファイル: conf/httpd.conf

3. IPアドレスに基づく(サーバーには複数のパブリックIPアドレスが必要)

www.lyn1.com----192.168.100.135
www.lyn2.com----192.168.100.136

(1)別のIPアドレスをサーバーにバインドする

(2)/etc/httpd/conf.dディレクトリにサイトファイルlyn1.confを追加する

/etc/httpd/conf/httpd.conf で直接設定することもできます。httpd.conf ファイルは、/etc/httpd/conf.d 内のファイルを自動的にインポートします。便宜上、/etc/httpd/conf.d フォルダーに直接書き込みます。

mkdir /mnt/lyn1

/etc/httpd/conf.d をコピーします。

vi lyn1.conf

<VirtualHost 192.168.100.135> //ローカル IP アドレスDocumentRoot /mnt/lyn1/ //ネットワーク データ ディレクトリServerName www.lyn1.com //Web サイト サーバーのドメイン名<Directory /mnt/lyn1/ > //Web サイト データ ディレクトリの権限AllowOverride None //上書きを許可しないRequire all permitted //すべてのアクセス要求を許可する</Directory>
</仮想ホスト>

(3)shiyan1.comの対応するウェブサイトの公開ディレクトリにウェブページファイルindex.htmlを追加する

vi /mnt/lyn1/index.html

<html>
<ヘッド>
<title>リン1</title>
</head>
<本文>
<h1>リン1</h1>
これはwww.lyn1.comのウェブサイトです
</本文>
</html>

(4)/etc/httpd/conf.dディレクトリにサイトファイルlyn2.confを追加する

mkdir /mnt/lyn1

/etc/httpd/conf.d をコピーします。

vi lyn1.conf

<VirtualHost 192.168.100.136> //このマシンの別の IP アドレスDocumentRoot /mnt/lyn2/ //ネットワーク データ ディレクトリServerName www.lyn2.com //Web サイト サーバーのドメイン名<Directory /mnt/lyn2/ > //Web サイト データ ディレクトリの権限AllowOverride None //上書きを許可しないRequire all permitted //すべてのアクセス要求を許可する</Directory>
</仮想ホスト>

vi /mnt/lyn2/index.html

<html>
<ヘッド>
<title>lyn2</title>
</head>
<本文>
<h1>リン2</h1>
これはwww.lyn2.comのウェブサイトです
</本文>
</html>

(6)Apacheサーバーを再起動し、ブラウザで確認する

systemctl で httpd を再起動します。

4. ポート番号に基づいて仮想ホストを構成する

www.lyn1.com----192.168.100.135:80
www.lyn2.com----192.168.100.135:81

(1)メイン設定ファイル/etc/httpd/conf/httpd.confにリスニングポート81を追加する

#vi /etc/httpd/conf/httpd.conf
80を聴く
81を聴く

(2)/etc/httpd/conf.d/lyn1.confファイルを変更します。

<仮想ホスト 192.168.100.135:80>
サーバー名 www.lyn1.com
ドキュメントルート /var/www/html/lyn1/
<ディレクトリ /var/www/html/lyn1/ > 
上書きを許可しない   
すべて許可が必要  
</ディレクトリ>
</仮想ホスト>

(3)/etc/httpd/conf.d/shiyan2.confファイルを変更します。

<仮想ホスト 192.168.100.135:81>
サーバー名 www.lyn2.com
ドキュメントルート /var/www/html/lyn2/
<ディレクトリ /var/www/html/lyn2/ > 
上書きを許可しない  
すべて許可が必要 
</ディレクトリ>
</仮想ホスト>

(4)Apacheサーバーを再起動し、ブラウザで確認する

systemctl で httpd を再起動します。

5. ホスト名ベースの仮想マシンを構成する

www.lyn1.com----192.168.100.135:80
www.lyn2.com----192.168.100.135:80

(1)DNSを登録する(DNSサーバーを設定し、通常の解決を実施する)。一時的なテストには、/etc/hostsの変更方法を使用できます。ここでは、hostsの変更方法を使用します。

#vi /etc/ホスト

192.168.100.135 www.lyn1.com

192.168.100.135 www.lyn2.com

(2)メイン設定ファイル/etc/httpd/conf.d/lyn1.conf

<仮想ホスト *:80>
サーバー名 www.lyn1.com
ドキュメントルート /var/www/html/lyn1/
<ディレクトリ /var/www/html/lyn1/ >
上書きを許可しない
すべて許可が必要
</ディレクトリ>
</仮想ホスト>

(3)メイン設定ファイル/etc/httpd/conf.d/lyn2.conf

<仮想ホスト *:81>
サーバー名 www.lyn2.com
ドキュメントルート /var/www/html/lyn2/
<ディレクトリ /var/www/html/lyn2/ >
上書きを許可しない
すべて許可が必要
</ディレクトリ>
</仮想ホスト>

(4)apache2サーバを再起動して確認する

systemctl で httpd を再起動します。

[root@lyn html]# curl www.lyn1.com

[root@lyn html]# curl www.lyn2.com

WindowsでWebサイトにアクセスするには、C:\Windows\System32\drivers\etc\hostsファイルに次の2行を追加します。

192.168.100.135 www.lyn1.com

192.168.100.135 www.lyn2.com

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Ubuntu 16.04 で Apache 仮想ホストを構成するための詳細な手順
  • Win10 Apache が仮想ホストを設定した後にローカルホストが利用できなくなる問題の解決方法
  • Ubuntu システムでの Apache 構成仮想ホストとリバース プロキシの詳細な説明
  • Apache 仮想ディレクトリと複数のホスト ヘッダーを構成する方法
  • Apache の仮想ホスト構成と書き換えパラメータの説明
  • Apache 仮想ホスト設定ガイド
  • Apache 構成 マルチポート マルチ仮想ホスト LAN アクセスの例
  • Apache 仮想ホストの設定方法例の概要
  • ドメイン名ベースの仮想ホストのローカル Apache 構成の詳細な説明

<<:  スキン効果を実現するJavaScript(背景の変更)

>>:  MySQL データ型の最適化の原則

推薦する

Linuxで現在のスクリプトの実際のパスを取得する方法

1. 現在のスクリプトの実際のパスを取得します。 #!/bin/bash if [[ $0 =~ ^...

UI を通じて Docker を管理する方法

Docker はますます多くのシナリオで使用されています。コマンドラインツールに慣れていない人にとっ...

MySQL のスケジュールされた完全なデータベースバックアップ

目次1. MySQLデータのバックアップ1.1、データをバックアップするためのmysqldumpコマ...

MySQLで指定した時間前にレコードを自動的に削除する方法

イベントについて: MySQL 5.1 では、イベントの概念が導入され始めました。イベントは「時間ト...

海外のウェブページのカラーマッチング事例20選共有

この記事では、優れた Web ページのカラー マッチングの事例を 20 件集めて紹介します。これらの...

OpenLayersはポイントフィーチャーレイヤーの集約表示方法を実現します

目次1. はじめに2. ポイントフィーチャーレイヤーの集約3. 重合の特殊処理4. 重合の特殊処理 ...

MySQL はどのようにしてデータベースの削除と暴走を効果的に防ぐことができますか?

目次セーフモード設定テスト1. where句なしで更新および削除する2. 非インデックスキーの削除3...

MySQLクエリ書き換えプラグインの使用

クエリ書き換えプラグインMySQL 5.7.6 以降、MySQL Server は、サーバーが実行す...

Docker は固定コンテナ IP アドレスを実現するためにカスタム ネットワークを作成します。

デフォルトのブリッジ ネットワークのため、コンテナーを再起動すると IP アドレスが変更されます。シ...

Nginx の書き換え正規マッチング書き換え方法の例

Nginx の書き換え機能は、リダイレクトと同様に、URL アドレスを一時的または永続的に新しい場所...

Vueルーティングコンポーネントでパラメータを渡す8つの方法の詳細な説明

シングルページアプリケーションを開発する場合、特定のルートを入力し、パラメータに基づいてサーバーから...

Linux の chown コマンドと chmod コマンドの違いの詳細な説明

Linux システムでは、chmod コマンドと chown コマンドの両方を使用して権限を設定でき...

ダイナミックな波効果を実現するSVG+CSS3

ベクトル波 <svg viewBox="0 0 560 20" class...

入力ファイルのカスタムボタンの美化(デモ)

以前にも同じような記事を書いたことがありますが、js スクリプトを使用しており、ファイルパスを表示で...

CentOS8 システムをベースにした Gitlab を構築するために Docker を使用する詳細なチュートリアル

目次1. Dockerをインストールする2. GitLabをインストールする3. GitLabを初期...