GNU/Linux >> Linux の 問題 >  >> Cent OS

Centos8にApacheWebサーバーをインストールする方法

Apache HTTPサーバー(Apache)は、最も人気のある無料のオープンソースクロスプラットフォームWebサーバーソフトウェアの1つであり、ApacheLicense2.0の条件の下でリリースされています。

Apacheは、頭字語のAである、LAMPセットアップの一部として人気があります。 Apacheサーバーの機能は、利用可能な多くのモジュールで拡張できます。

前提条件:

  • 最新のCentos8サーバー
  • サーバー(またはsudoアクセス権を持つユーザー)へのrootアクセス
  • ポート80および443へのトラフィックを許可するように設定されたファイアウォール

Apacheのインストール

パッケージが最新であることを確認します:

sudo dnf -y update

Apacheは、デフォルトのCentOS8ソフトウェアリポジトリでhttpdとして利用できます。 。次のコマンドを使用して、それに関する情報を確認できます:

sudo dnf info httpd

これに似たものが表示されるはずです:

$ sudo dnf info httpd
CentOS Linux 8 - AppStream                                          20 MB/s | 8.8 MB     00:00
CentOS Linux 8 - BaseOS                                               24 MB/s | 5.6 MB     00:00
Last metadata expiration check: 0:00:01 ago on Sat 28 Aug 2021 01:06:59 PM UTC.
Available Packages
Name         : httpd
Version      : 2.4.37
Release      : 39.module_el8.4.0+778+c970deab
Architecture : x86_64
Size         : 1.4 M
Source       : httpd-2.4.37-39.module_el8.4.0+778+c970deab.src.rpm
Repository   : appstream
Summary      : Apache HTTP Server
URL          : https://httpd.apache.org/
License      : ASL 2.0
Description  : The Apache HTTP Server is a powerful, efficient, and extensible
             : web server.

次のコマンドでインストールします:

sudo dnf install -y httpd

firewalldでhttpとhttpsを有効にする

ファイアウォールを設定して実行している場合は、次のコマンドを使用してhttpポートとhttpsポートを有効にする必要があります。

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https

次に、ファイアウォールをリロードして、これらの新しいルールを有効にします。

sudo firewall-cmd --reload

httpdサービスの開始と有効化

デフォルトでは、サービスは開始されません。次のコマンドで確認します:

sudo systemctl status httpd

出力:

$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:httpd.service(8)

次のコマンドでサービスを開始します:

sudo systemctl start httpd

サービスの実行中にアクティブなステータスが表示されます
サービスが正常に機能していることを確認してください:

$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2021-08-28 13:32:17 UTC; 17s ago
     Docs: man:httpd.service(8)
 Main PID: 65827 (httpd)
   Status: "Running, listening on: port 80"
    Tasks: 213 (limit: 23800)
   Memory: 28.9M
   CGroup: /system.slice/httpd.service
           ├─65827 /usr/sbin/httpd -DFOREGROUND
           ├─65828 /usr/sbin/httpd -DFOREGROUND
           ├─65829 /usr/sbin/httpd -DFOREGROUND
           ├─65830 /usr/sbin/httpd -DFOREGROUND
           └─65831 /usr/sbin/httpd -DFOREGROUND

Aug 28 13:32:17 test-app-server systemd[1]: Starting The Apache HTTP Server...
Aug 28 13:32:17 test-app-server httpd[65827]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::8fc:23ff:fe51:cc>
Aug 28 13:32:17 test-app-server systemd[1]: Started The Apache HTTP Server.
Aug 28 13:32:17 test-app-server httpd[65827]: Server configured, listening on: port 80

上記は、apacheが現在正常に機能していることを確認します。

サービスにアクセスできることを確認するには、次のURLにアクセスして、httpdページを取得できるかどうかを確認してください。

http://server_ip

サーバーが起動していることがわからない場合は、端末で次のコマンドを使用してください。

curl -4 icanhazip.com

そのページにアクセスすると、すべてが正常に機能している場合は、以下のスクリーンショットのようなApacheのデフォルトページが表示されます。

>

起動時にサービスが常に開始されるようにするには、次のsystemctlコマンドを使用します。

sudo systemctl enable httpd

仮想ホストの設定

Apacheを使用すると、Apacheが実行されている同じサーバー上で複数のサイトをホストすることができます。これは、サーバーがホストしているサイトをそれぞれ表す複数のドメインを使用して常に実現できます。

Apache仮想ホストはNginxサーバーブロックに似ています。各仮想ホストには、単一のホストの構成の詳細があります。必要な数の仮想ホストを持つことができます。

この例では、ドメインsite1.citizix.comを使用します 仮想ホスト用ですが、選択したドメインを自由に使用できます。使用するドメインのDNSは、サーバーのIPアドレスを指すようにすでに構成されている必要があることに注意してください。
次のように確認してください:

dig -t A site1.citizix.com

ディレクトリとサンプルコンテンツの作成

apacheのデフォルトページは、/var/www/htmlのコンテンツを提供するデフォルトの仮想ホストとして構成されています。 。 /var/wwwにサイトのディレクトリを作成することをお勧めします そこからサービスを提供するためのベストプラクティス以来、ディレクトリ。

次のコマンドを使用して、サイトのディレクトリを作成しましょう。

sudo mkdir /var/www/site1.citizix.com

簡単なindex.htmlを作成しましょう 当サイトから提供するページ。次のコマンドを使用しない場合、これを機能させるにはvimをインストールする必要があります:

sudo dnf install -y vim

ファイルを編集します:

sudo vim /var/www/site1.citizix.com/index.html 

ファイルにコンテンツを追加します:

<html>
  <head>
    <title>Hello from Citizix Site1!</title>
  </head>
  <body>
    <h1>Hey!</h1>
    <p>This is citizix site1. Welcome here.</p>
  </body>
</html>

最後に、現在のユーザーがサイトディレクトリを所有していることを確認しましょう:

sudo chown -R $USER:$USER /var/www/site1.citizix.com

仮想ホストの作成

Apache仮想ホストファイルは、各サイトの構成を指定し、ApacheWebサーバーにさまざまなドメイン要求に応答する方法を指示します。

Apache構成は、ディレクトリ/etc/httpd/conf.d/に保存されます。 。私たちのサイトの構成を作成しましょう:

sudo vim /etc/httpd/conf.d/site1.citizix.com.conf

次のコンテンツを追加します:

<VirtualHost *:80>
    ServerName site1.citizix.com
    ServerAlias site1.citizix.com
    DocumentRoot /var/www/site1.citizix.com
    ErrorLog /var/log/httpd/site1.citizix.com.error.log
    CustomLog /var/log/httpd/site1.citizix.com.requests.log combined
</VirtualHost>

これにより、Apacheに次のように通知されます。

  • ServerName およびServerAlias–提供するホストの名前
  • DocumentRoot –公的にアクセス可能なWebドキュメントを保持するルートを直接見つける場所
  • ErrorLog –このサイトのエラーログを保存する場所
  • CustomLog –この特定のサイトのリクエストログを保存する場所

終了したらファイルを保存して閉じます

仮想ホストのテスト

構成が整ったので、すべてが期待どおりに機能していることをテストする必要があります。

最初にapacheを再起動して、構成を再読み込みします:

sudo systemctl restart httpd 

/var/log/httpd/の内容を一覧表示します Apacheがログファイルを作成したかどうかを確認するディレクトリ:
すべて問題がなければ、次のような出力が表示されます:

# ls /var/log/httpd/
access_log  error_log  site1.citizix.com.error.log  site1.citizix.com.requests.log

すべてが順調であれば、Apacheがドメイン名を提供します。 http://site1.citizix.comに移動すると、これをテストできます。 、次のようなものが表示されるはずです:

上のスクリーンショットは、仮想ホストが正常に構成され、コンテンツを提供していることを確認しています。

他の複数のサイトをホストする必要がある場合は、必要なサイトに対して上記の手順を繰り返します。

結論

Centos8サーバーの上記の手順でApacheWebサーバーをインストールしてセットアップすることができました。


Cent OS
  1. ApacheWebサーバーCentOS6/RHEL6をインストールします

  2. CentOS8LinuxにApache/httpdをインストールする方法

  3. CentOS8にApacheをインストールする

  1. CentOS7にApacheWebサーバーをインストールする方法

  2. CentOS8にApacheCassandraをインストールする方法

  3. CentOS8にApacheWebサーバーをインストールします-それを行うためのステップバイステップのプロセス?

  1. CentOS7にLiteSpeedWebサーバーをインストールする方法

  2. CentOS7にLighttpdWebサーバーをインストールする方法

  3. CentOS 7 /RHEL7にJettyWebサーバーをインストールする方法