InfraAcademy

InfraAcademy Blog

AWSのLightsailでのapacheの操作方法解説【開始・停止・再起動・設定ファイルなど】

| #Linux #aws #apache
Linuxをブラウザで試してみる

Linux・ネットワーク・AWSを、環境構築なしで実践学習できます

こんにちは、フルスタックエンジニアのryuです。

今回の記事では、AWSのLightsailでApacheを操作する方法について解説します。

LightsailのBitnamiイメージでは、一般的なUbuntuのApacheとはディレクトリ構成や操作方法が少し違います。

この記事では、Apacheの開始・停止・再起動・ステータス確認から、設定ファイル、ログ、ポート確認まで初心者向けに解説します。

AWSのLightsailでApacheを操作する方法

LightsailでBitnamiのイメージを利用している場合、Apacheなどのサービスはctlscript.shから操作できます。

一般的なLinuxではsystemctlを使うことが多いですが、Bitnami環境では次のようなコマンドを使います。

操作 コマンド
Apacheを開始 sudo /opt/bitnami/ctlscript.sh start apache
Apacheを停止 sudo /opt/bitnami/ctlscript.sh stop apache
Apacheを再起動 sudo /opt/bitnami/ctlscript.sh restart apache
サービス状態を確認 sudo /opt/bitnami/ctlscript.sh status

まずは、それぞれの操作を詳しく見ていきましょう。

Apacheを開始する

Apacheを開始するには、以下のコマンドを実行します。

sudo /opt/bitnami/ctlscript.sh start apache

Apacheが停止している状態で実行すると、Apacheが起動します。

Apacheを停止する

Apacheを停止する場合は、次のコマンドを使います。

sudo /opt/bitnami/ctlscript.sh stop apache

設定変更や証明書の作業などで、一時的にApacheを停止したい場合に利用します。

Apacheを再起動する

Apacheの設定ファイルを変更したあと、設定を反映する場合によく使うのが再起動です。

sudo /opt/bitnami/ctlscript.sh restart apache

Apacheそのものの起動・停止について詳しく知りたい方は、【関連記事】Apacheの再起動の方法は?Apacheの起動、停止、再起動のコマンドを紹介も参考にしてください。

Apacheのステータスを確認する

Apacheが起動しているか確認したい場合は、次のコマンドを実行します。

sudo /opt/bitnami/ctlscript.sh status

コマンドを実行すると、以下のように表示されます。

apacheが起動していると、「apache already running」という文字列が表示されます。

元の記事ではステータス確認にrestart apacheを記載していましたが、状態確認はstatusを使います。

LightsailのApache設定ファイルはどこにある?

Bitnamiでは通常のApacheと場所が違う

LightsailのBitnamiイメージでは、Apacheの設定ファイルは/opt/bitnami配下にあります。

ここで注意したいのが、Bitnamiのバージョンやイメージによってディレクトリ構成が異なることです。

現在のLightsailでは、Debianベースの一部Bitnami環境で次のようなパスが使われます。

/opt/bitnami/apache2/conf/

一方、自己完結型のBitnami環境や別のイメージでは、次のパスを利用する場合があります。

/opt/bitnami/apache/conf/

どちらを使っているかは、ls /opt/bitnamiで確認できます。

httpd.confを確認する

Apacheの基本的な設定ファイルはhttpd.confです。

たとえば、apache2を利用している環境では次のようになります。

sudo vi /opt/bitnami/apache2/conf/httpd.conf

apacheディレクトリを使う環境では次の通りです。

sudo vi /opt/bitnami/apache/conf/httpd.conf

設定ファイルを変更する前には、バックアップを取っておくと安心です。

sudo cp /opt/bitnami/apache2/conf/httpd.conf \
  /opt/bitnami/apache2/conf/httpd.conf.bak

誤った設定を書いてApacheが起動しなくなっても、バックアップから戻しやすくなります。

VirtualHostの設定を確認する

BitnamiのApacheでは、httpd.confだけではなく、VirtualHost用の設定ファイルも利用されます。

環境によって、次のようなファイルがあります。

/opt/bitnami/apache2/conf/bitnami/bitnami.conf

または、

/opt/bitnami/apache/conf/bitnami/bitnami.conf

HTTPからHTTPSへのリダイレクトやDocumentRootなどを確認するときに、このファイルを編集することがあります。

複数のサイトを設定している場合は、vhostsディレクトリも確認します。設定変更後はApacheを再起動します。

sudo /opt/bitnami/ctlscript.sh restart apache

LightsailのDocumentRootを確認する

DocumentRootは、ApacheがWebページとして配信するファイルを置く場所です。

Bitnami環境では、次のようなパスが使われます。

/opt/bitnami/apache2/htdocs

または、

/opt/bitnami/apache/htdocs

たとえば、次のようにファイルを確認できます。

ls -la /opt/bitnami/apache2/htdocs

index.htmlなどが配置されていれば、ApacheはそのファイルをWebページとして返します。

WordPressなどでは配置場所が異なることもあるため、実際の設定はbitnami.confも確認しましょう。

【関連記事】DocumentRootについて詳しく知りたい方は、Apache2のドキュメントルートとは?変更方法と403エラーの対処法を解説もご覧ください。

Apacheのログを確認する

Apacheでエラーが発生した場合は、設定ファイルだけではなくログを確認しましょう。

Bitnami環境では、Apacheのログは次のような場所にあります。

/opt/bitnami/apache/logs/access_log
/opt/bitnami/apache/logs/error_log

環境によってはapache2配下にある場合もあります。

エラーログの最後の数十行を見る場合は、次のように実行できます。

sudo tail -n 50 /opt/bitnami/apache/logs/error_log

リアルタイムでログを確認したい場合は-fを付けます。

sudo tail -f /opt/bitnami/apache/logs/error_log

Apacheが起動しない、500エラーになる場合は、まずerror_logを確認してみてください。

【関連記事】Apacheのログについては、Apacheのログの場所は?ログの場所を設定する方法について詳しく解説でも詳しく解説しています。

Apacheが動いているのにWebサイトへアクセスできない場合

Apacheのステータスが正常でも、ブラウザからアクセスできないことがあります。

その場合は、Apacheだけではなくネットワーク側も確認します。

ポート80と443を確認する

Webサーバーでは、HTTPにTCPの80番ポート、HTTPSにTCPの443番ポートを利用します。

Lightsailではインスタンスごとにファイアウォールがあり、外部から接続できるポートを設定します。

Lightsailの管理画面からネットワークを開き、HTTPやHTTPSが許可されているか確認してください。

確認する内容は次のようになります。

用途 プロトコル ポート
SSH TCP 22
HTTP TCP 80
HTTPS TCP 443

独自ポートを使う場合は、Lightsail側のファイアウォールも合わせて変更します。

Apacheがポート80を使っているか確認する

Linux側では、次のように確認できます。

sudo ss -lntp | grep ':80'

ポート80でApacheが待ち受けていれば、該当する情報が表示されます。

何も表示されない場合は、Apacheが起動していない、設定が違う、別のポートを使っている可能性があります。

Lightsailと通常のUbuntuでApacheの操作方法が違う理由

Lightsailでも、Ubuntuへ自分でApacheを入れた場合はsystemctlを使うことがあります。

sudo systemctl status apache2
sudo systemctl restart apache2

BitnamiのWordPressやLAMPではctlscript.shを使うため、どのイメージを使っているかで操作方法が変わります。

InfraAcademyでLinuxとAWSを実際に学習する

今回の記事では、AWS Lightsail上のApacheを操作しました。

実際のサーバーでは、AWSの知識だけではなく、Linuxのコマンド、Webサーバー、ネットワークなど複数の知識が必要になります。

InfraAcademyでは、Linuxやネットワーク、AWSを実際に操作しながら学習できます。

Linuxの基本操作から学習したい方は、Linux入門講座をご覧ください。

IPアドレスやポート、ルーティングなどを学習したい方は、ネットワーク講座がおすすめです。

AWS上でサーバーやネットワークを構築したい方は、AWS講座も用意しています。

Linuxの実践的な内容やApacheの設定を学習したい方は、実際にコマンドを入力しながら学習してみてください。

InfraAcademyでLinuxの学習を始める

LightsailでApacheを操作する方法まとめ

今回の記事では、AWS LightsailのBitnami環境でApacheを操作する方法について解説しました。

Apacheを再起動する場合は、次のコマンドを利用できます。

sudo /opt/bitnami/ctlscript.sh restart apache

サービスの状態を確認する場合は、restartではなくstatusを使います。

sudo /opt/bitnami/ctlscript.sh status

Bitnamiの構成によって/opt/bitnami/apache2/または/opt/bitnami/apache/を使います。設定変更後に起動しない場合はerror_logも確認してみてください。

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

InfraAcademy運営 / エンジニア

エンジニア歴10年。Linux、ネットワーク、クラウドを中心に、実務で役立つインフラ技術を初心者にもわかりやすく解説しています。

X: @ryu63614894

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る