Apache Webサーバーとは何ですか?
ApacheまたはApacheHTTPサーバーは、ApacheSoftwareFoundationによって開発および保守されている無料のオープンソースWebサーバーです。その人気は、世界中のWebサイトの約46%がApacheを利用しているという事実から判断できます。 Apacheを使用すると、Webサイト開発者はWebを介してコンテンツを提供できます。ユーザーがブラウザのアドレスバーにドメイン名を入力したときにユーザーから要求されたファイルを配信することで、配信担当者として機能します。
このチュートリアルは、UbuntuシステムにApache2をインストールして構成する方法について説明しています。この記事に記載されているコマンドと手順は、Ubuntu18.04LTSシステムで実行されています。この記事では、Ubuntuコマンドラインであるターミナルを使用しているため、システムダッシュまたはCtrl + Alt + Tを使用して開くことができます ショートカット。
UbuntuLinuxにApache2をインストールする
Ubuntuの公式リポジトリからApache2ソフトウェアをインストールするには、次の手順に従ってください。
ステップ1:システムリポジトリを更新する
最初にUbuntuリポジトリのローカルパッケージインデックスを更新することで、ソフトウェアの最新バージョンをダウンロードできます。ターミナルを開き、次のコマンドを入力して実行します。
$ sudo apt update
ステップ2:aptコマンドを使用してApache2をインストールします
次に、Apache2とそれに必要な依存関係をインストールするには、sudoとして次のコマンドを入力します。
$ sudo apt install apache2
インストールを続行するためにy/nオプションが表示される場合があります。 Yを入力してください。その後、インストール手順が開始されます。
ステップ3:Apacheのインストールを確認する
インストールが完了したら、次のコマンドを入力して、バージョン番号を確認し、Apache2が実際にシステムにインストールされていることを確認できます。
$ apache2 -version
ファイアウォール設定の構成
Apacheを構成するには、まずシステムの特定のWebポートへの外部アクセスを許可し、UFWファイアウォールでApacheを許可する必要があります。
ステップ1:UFWアプリケーションプロファイルを一覧表示する
ファイアウォールを構成するために、最初にApacheへのアクセスを有効にするために必要なアプリケーションプロファイルをリストします。次のコマンドを使用して、そのような使用可能なアプリケーションを一覧表示します。
$ sudo ufw app list
上記の出力では、3つのApacheプロファイルがすべて異なるレベルのセキュリティを提供していることがわかります。 Apacheは、ポート80が開いたままで最大の制限を提供するものです。
ステップ2:UFWでApacheを許可し、そのステータスを確認する
UFWでApacheを許可すると、サーバーに最大限のセキュリティを提供しながら、ネットワークトラフィック用にポート80が開きます。次のコマンドでApacheを許可するようにUFWを設定してください:
$ sudo ufw allow 'Apache'
UFWのステータスに、ファイアウォールで有効になっているApacheが表示されます。
$ sudo ufw status
ApacheWebサーバー設定を構成する
ステップ1:Apacheサービスが実行されていることを確認します
最初のステップは、次のコマンドを使用して、Apache2サービスがシステムで稼働していることを確認することです。
$ sudo systemctl status apache2
ステータス「アクティブ(実行中)は、apache2サービスが実行中であることを確認します。
ステップ2:Apacheが正しく実行され、IPアドレスをリッスンしていることを確認します
Apacheサーバーからページをリクエストすることで、Apacheが実行されているかどうかを確認することもできます。この目的のために、サーバーのIPを使用してApacheランディングページにアクセスできます。
次のコマンドを使用して、サーバーのIPについて確認します。
$ hostname -I
次に、次のようにWebブラウザで出力から1つずつIPを試してください。
http:// server_IP
私の場合、http://192.168.100.4とhttp://192.168.100.5です。そうすることで、Ubuntu用の次のApache Webページが表示され、Apacheサーバーが正しく機能していることが確認されます。
Apacheで仮想ホストを設定する
仮想ホストは、Nginxにサーバーブロックがあるものと似ています。これは、1つのサーバーから複数のドメインの構成を管理するために使用されます。 Apacheサーバーを介して仮想ホストを設定する方法の例を示します。 Apache for Ubuntu 18でデフォルトで有効になっているサーバーブロックを使用して、sampledomain.comという名前のWebサイトをセットアップします。
ステップ1:ドメイン名を設定する
デフォルトで有効になっているサーバーブロックは、/ var / www/htmlからドキュメントを提供できます。ただし、デフォルトのディレクトリはそのままにして、/ var /www/にディレクトリを作成します。
次のコマンドを使用してこのディレクトリを作成し、sampledomain.comをそれぞれのドメイン名に置き換えます。
sudo mkdir -p /var/www/sampledomain.com/html
次に、次のコマンドを使用してディレクトリの所有権を割り当てます。
sudo chown -R $USER:$USER /var/www/sampledomain.com/html
sudo chmod -R 755 /var/www/sampledomain.com
次に、Apacheがドメイン名を実行しているかどうかをテストするために後でアクセスできるインデックスページを作成しましょう。 Nanoエディターまたは任意のテキストエディターを使用してHTMLファイルを作成します。
$ nano /var/www/sampledomain.com/html/index.html
インデックスページに次のHTMLを入力します。
<html> <head> <title>Welcome to the page sampledomain.com!</title> </head> <body> <h1>You got Lucky! Your sampledomain.com server block is up!</h1> </body> </html>
nanoエディターを使用してHTMLファイルを作成しています。
Ctrl + Xを使用してファイルをnanoに保存し、Yと入力してEnterキーを押すことができます。
Apacheには、サーバーのコンテンツを提供するための仮想ホストファイルが必要です。この目的のデフォルトの構成ファイルはすでに作成されていますが、カスタム構成用に新しい構成ファイルを作成します。
$ sudo nano /etc/apache2/sites-available/sampledomain.com.conf
ドメイン名について、次のカスタマイズされた構成の詳細を入力します。
<VirtualHost *:80> ServerAdmin [email protected] ServerName sampledomain.com ServerAlias www.sampledomain.com DocumentRoot /var/www/sampledomain.com/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
この.confファイルの作成にはnanoエディターを使用しています。
Ctrl + X を使用して、ファイルをnanoに保存できます。 次にYを入力し、Enterキーを押します。
ステップ2:ドメイン構成ファイルを有効にする
a2ensiteツールで作成した構成ファイルを有効にしましょう:
$ sudo a2ensite sampledomain.com.conf
出力は、新しい構成をアクティブ化することを提案しますが、元の構成ファイルを無効にする次のコマンドを実行した後、すべてをまとめて実行できます。
$ sudo a2dissite 000-default.conf
次に、Apacheサービスを再起動します。
$ sudo systemctl restart apache2
ステップ3:エラーをテストする
最後に、次のコマンドを使用して、構成エラーがあるかどうかをテストします。
$ sudo apache2ctl configtest
エラーが発生しない場合は、次の出力が表示されます。
ただし、Ubuntu18.04では次のエラーが一般的です
エラーを解決します:
上記のエラーを解決するには、次のコマンドを入力します。
$ echo "ServerName sampledomain.com | sudo tee /etc/apache2/conf-available/servername.conf
そして:
$ sudo a2enconf servername
エラーをもう一度確認すると、次の出力でこのエラーが解決されたことがわかります。
ステップ4:Apacheがドメイン名を提供しているかどうかをテストする
これで、Apacheサーバーがドメイン名を提供するように構成されました。これは、システムで実行されている任意のWebブラウザで次のようにサーバー名を入力することで確認できます。
http://sampledomain.com
インデックスページは次のように表示されます。これは、Apacheがサーバーブロックを提供する準備ができたことを示しています。
いくつかの一般的なApache管理コマンド
Webサーバーをセットアップした後、Apacheでいくつかの基本的な管理操作を実行する必要がある場合があります。これらの操作のためにターミナルアプリケーションに入力できるコマンドは次のとおりです。
sudo systemctl start apache2
Apacheサーバーを起動するには、このコマンドをsudoとして使用します。
sudo systemctl stop apache2
開始モードのときにApacheサーバーを停止するには、このコマンドをsudoとして使用します。
sudo systemctl restart apache2
このコマンドをsudoとして使用して、Apacheサービスを停止してから再開します。
sudo systemctl reload apache2
接続を再起動せずに構成の変更を適用するには、このコマンドをsudoとして使用します。
sudo systemctl enable apache2
システムを起動するたびにApacheを起動できるようにするには、このコマンドをsudoとして使用します。
sudo systemctl disable apache2
システムを起動するたびにApacheが起動するように設定している場合は、このコマンドをsudoとして使用して無効にします。
結論
この記事を通じて、UbuntuシステムにApacheWebサーバーをインストールして構成する方法を学びました。これには、UFWファイアウォールにいくつかの変更を加えてから、IPアドレス用にWebサーバーを構成することが含まれます。また、Apacheを介して仮想ホストをセットアップすることをお勧めします。これにより、Apacheを使用してインターネット上でファイルをホストする方法の基礎が得られます。基本的なApache管理コマンドは、Web管理者がWebサーバーを最適な方法で管理するのにも役立ちます。