アパッチ webserverは、オープンソースで人気のあるHTTP Webサーバーであり、ホスティング業界で引き続き大きな市場シェアを獲得しています。ほんの数例を挙げると、モジュールの機能強化、マルチプロトコルのサポート、簡略化された構成、多言語のサポートなど、多数の機能が付属しています。
また読む :CentOS8にNginxをインストールする方法
このガイドでは、 Apacheのインストールについて説明します。 CentOS 8のウェブサーバー およびRHEL8 仮想ホスト環境で。このチュートリアルを書いている時点で、Apacheの最新バージョンは Apache 2.2.43です。 。
ApacheWebサーバーのインストール
開始するには、まず CentOS 8を更新します またはRHEL8 次のdnfコマンドを使用したシステムパッケージリスト。
$ sudo dnf update
アップデートが完了したら、 Apacheをインストールします 次のコマンドを実行してWebサーバーを作成します。
$ sudo dnf install httpd
インストールしたら、rpmコマンドを実行してApacheのバージョンを確認できます。
$ rpm -qi httpd
Apacheのバージョンを確認する
このコマンドは、パッケージのバージョン、リリース日、ビルド、アーキテクチャなどの一連の情報を出力します。
Apache HTTP Webサービスを開始するには、systemctlコマンドを実行します。
$ sudo systemctl start httpd
サービスが実行されているかどうかを確認するには、実行します。
$ sudo systemctl status httpd
Apacheサービスステータスの確認
出力から、「アクティブ の緑色のステータスは、ApacheWebサーバーが稼働中であることを示します。
ウェブサーバーが実行されているという疑問を解消するには、図のようにサーバーのIPアドレスまたはドメイン名を参照してApacheにテストページをリクエストします。
http://server-ip
ifconfigコマンドを実行すると、サーバーのIPを取得できます。サーバーがクラウドでホストされている場合は、curlコマンドを実行してパブリックIPを取得できます。
$ curl ifconfig.me OR $ curl -4 icanhazip.com
CentOSサーバーのIPアドレスを見つける
サーバーのIPアドレスを参照すると、次のWebページが表示されます。
ApacheWebページを確認してください
これは、Webサーバーが実行されていることの確かな確認です。
ApacheWebサーバーの管理
Apacheを使用 インストールして実行すると、 systemctlを使用できます Apacheを管理するための検査ツール。
たとえば、Apacheを停止するには、次のコマンドを実行します。
$ sudo systemctl stop httpd
サービスをもう一度開始するには、次を実行します。
$ sudo systemctl start httpd
構成ファイルのいずれかに変更を加え、変更を適用するために再起動する必要がある場合は、次のコマンドを実行します。
$ sudo systemctl restart httpd
通常、サービスを再起動するとサービスが中断します。より良い代替策は、接続を中断することなく単にリロードすることです。
$ sudo systemctl reload httpd
起動時または再起動時にApacheWebサーバーを自動的に起動するには、以下のコマンドを実行します。これにより、Apacheがユーザーの介入なしに自動的に起動するようになります。
$ sudo systemctl enable httpd
起動時にサービスを自動的に開始しないことを選択した場合は、次を実行します。
$ sudo systemctl disable httpd
Apache仮想ホストのセットアップ
デフォルトでは、ApacheWebサーバーは1つのWebサイトのみを提供またはホストするように構成されています。 1つのWebサイトのみをホストする場合は、この手順は必要ありません。ただし、サーバーで複数のドメインをホストする予定の場合は、Apache仮想ホストを構成する必要があります。
仮想ホストは、デフォルトのドメインとは別のドメインを設定できる構成を含む別のファイルです。このガイドでは、ドメイン crazytechgeek.infoの仮想ホストを設定します 。
デフォルトの仮想ホストは、/var/www/html
にあります。 ディレクトリ。これは、単一のサイトでのみ機能します。ドメイン用に別の仮想ホストを作成するには、/var/www
内に別のディレクトリ構造を作成します 示されているディレクトリ。
$ sudo mkdir -p /var/www/crazytechgeek.info/html
さらに、ログファイルを保存するためのディレクトリを作成することもできます。
$ sudo mkdir -p /var/www/crazytechgeek.info/log
次に、$USER
を使用してファイルのアクセス許可を編集します 示されている環境変数。
$ sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html
また、図のようにwebrootディレクトリの権限を調整します。
$ sudo chmod -R 755 /var/www
次に、サンプルのindex.html
を作成します 図のようにファイルします。
$ sudo vim /var/www/crazytechgeek.info/html/index.html
文字'i'
を押す キーボードで、仮想ホストをテストするときにWebブラウザに表示されるサンプルコンテンツを図のように貼り付けます。
<html> <head> <title>Welcome to crazytechgeek.info!</title> </head> <body> <h1>Success! The crazytechgeek.info virtual host is up and perfectly working!</h1> </body> </html>
構成ファイルを保存して終了します。
サンプルインデックスファイルとサイトディレクトリが作成されたら、次に進んで仮想ホストファイルを作成できます。仮想ホストファイルにはドメインのサイト構成が含まれ、クライアントの要求にどのように応答するかをApacheに指示します。
仮想ホストファイルにはドメインのサイト構成が含まれ、クライアントの要求にどのように応答するかをApacheに指示します。ただし、続行するには、2つのディレクトリを作成する必要があります。sites-available
およびsites-enabled
ディレクトリ。
仮想ホストファイルはsites-available
に保存されます sites-enabled
のディレクトリ ディレクトリには、仮想ホストへのシンボリックリンクが含まれます。
図のように両方のディレクトリを作成します。
$ sudo mkdir /etc/httpd/sites-available $ sudo mkdir /etc/httpd/sites-enabled
次に、Apache Webサーバーのメイン構成ファイルを変更し、サイトが有効なディレクトリ内の仮想ホストの場所をApacheに指示します。
$ sudo vim /etc/httpd/conf/httpd.conf
構成ファイルの最後に示されているように行を追加します。
IncludeOptional sites-enabled/*.conf
保存して終了します。
次に、次のように仮想ホストファイルを作成します。
$ sudo vim /etc/httpd/sites-available/crazytechgeek.info
以下のコンテンツを貼り付けて、crazytechgeek.info
を置き換えます 自分のドメイン名で。
<VirtualHost *:80> ServerName www.crazytechgeek.info ServerAlias crazytechgeek.info DocumentRoot /var/www/crazytechgeek.info/html ErrorLog /var/www/crazytechgeek.info/log/error.log CustomLog /var/www/crazytechgeek.info/log/requests.log combined </VirtualHost>
ファイルを保存して終了します。
次に、sites-enabled
にシンボリックリンクを作成して、仮想ホストファイルを有効にします。 ディレクトリ。
$ sudo ln -s /etc/httpd/sites-available/crazytechgeek.info.conf /etc/httpd/sites-enabled/crazytechgeek.info.conf
仮想ホストのSELinuxパーミッションの調整
CentOS 8 およびRHEL8 SELinuxに同梱 これは、Linuxシステムのセキュリティを強化するためのセキュリティモジュールです。カスタムのログを構成したため 前のステップのディレクトリでは、いくつかのSELinuxポリシーを更新して、ApacheWebサーバーにディレクトリへの書き込みを指示する必要があります。
SELinux Apacheポリシーの調整には、2つのアプローチがあります。調整ポリシーを普遍的に調整することと、ディレクトリ上のポリシーを調整することです。後者の方が好ましいため、後者が推奨されます。
ディレクトリでのSELinuxポリシーの調整
SELinuxの編集 ログディレクトリの権限により、ApacheのWebサーバーのポリシーを完全に制御できます。この方法は非常に時間がかかり、仮想ホスト構成ファイルで指定された追加のディレクトリのコンテキストタイプを手動で構成する必要があります。
開始する前に、まずSELinuxによってログディレクトリに割り当てられたコンテキストタイプを確認します。
$ sudo ls -dlZ /var/www/crazytechgeek.info/log/
出力は、以下のようになります。
ApacheログディレクトリにSELinuxポリシーを設定する
出力から、設定されたコンテキストは httpd_sys_content_t 。これは、Webサーバーがログディレクトリ内のファイルのみを読み取ることができることを示しています。このコンテキストをhttpd_log_tに変更する必要があります Apacheがログエントリを生成してディレクトリに追加できるようにします。
したがって、次のコマンドを実行します。
$ sudo semanage fcontext -a -t httpd_log_t "/var/www/crazytechgeek.info/log(/.*)?"
「semanage:コマンドが見つかりません」というエラーが発生した場合。
これは、 semanageを提供するパッケージを意味します コマンドがインストールされていません。このエラーを修正するには、これらのパッケージをインストールする必要があります。ただし、最初に、次のコマンドを実行して、どのパッケージがsemanageコマンドを提供しているかを確認します。
$ sudo dnf whatprovides /usr/sbin/semanage
出力は、semanageを提供するパッケージを提供します。これは policycoreutils-python-utils 。
次に、DNFパッケージマネージャーを使用して、図のようにパッケージをインストールします。
$ sudo dnf install policycoreutils-python-utils
これで、コンテキストを変更するためのコマンドが機能するはずです。
$ sudo semanage fcontext -a -t httpd_log_t "/var/www/crazytechgeek.info/log(/.*)?"
変更を保存して永続化するには、 restoreconを発行します 示されているコマンド:
$ sudo restorecon -R -v /var/www/crazytechgeek.info/log
次のコマンドをもう一度実行すると、変更を確認できます。
$ sudo ls -dlZ /var/www/crazytechgeek.info/log/
SELinuxコンテキストタイプを確認する
コンテキストタイプがhttpd_log_t
に変更されていることに注意してください。 出力に見られるように。
変更を適用するには、Apacheを再起動します。
$ sudo systemctl restart httpd
次のように内容を一覧表示することで、Apacheがログディレクトリにログファイルを保存しているかどうかを確認できます。
$ ls -l /var/www/crazytechgeek.info/log/
図のように、エラーログファイルとリクエストログファイルの2つのログファイルが表示されるはずです。
Apacheログファイルを確認する
Apache仮想ホストのテスト
最後に、ApacheWebサーバーが仮想ホストファイルを提供していることを確認する必要があります。これを行うには、ブラウザを開き、サーバーのIPアドレスまたはドメイン名に移動します。
http://domain-name
Apache仮想ホストのWebサイトを確認する
完全!これは、すべてが順調に進んでおり、仮想ホストが期待どおりに提供されていることを示しています。
結論
このガイドでは、 Apacheのインストール方法を学びました。 CentOS 8のウェブサーバー およびRHEL8 また、追加のドメインのコンテンツを提供するように仮想ホストファイルを構成する方法についても説明します。追加のドメインに対応するのに適していると思われる場合は、複数の仮想ホストファイルを自由に構成してください。
完全なホスティングスタックをセットアップする場合は、CentOS8にLAMPスタックをインストールすることをお勧めします。
共有は思いやりがあります…Facebookで共有するTwitterで共有するLinkedinで共有するRedditで共有する