LinuxサーバでWebサーバーを構築したのでインストールまでの手順をまとめます。
今回の対象OSは「CentOS8.5」となります。
「Linux」Webサーバ(Apache)インストールとHTTP起動までの手順
事前に「yum」コマンドでyumリポジトリから「httpd」のパッケージが提供されているか確認します。
$ yum info httpd メタデータの期限切れの最終確認: 2:15:30 時間前の 2022年04月24日 09時13分22秒 に実施しました。 インストール済みパッケージ 名前 : httpd バージョン : 2.4.37 リリース : 43.module_el8.5.0+1022+b541f3b1 Arch : x86_64 サイズ : 4.3 M ソース : httpd-2.4.37-43.module_el8.5.0+1022+b541f3b1.src.rpm リポジトリー : @System repo から : appstream 概要 : Apache HTTP Server URL : https://httpd.apache.org/ ライセンス : ASL 2.0 説明 : The Apache HTTP Server is a powerful, efficient, and extensible : web server.
上記でApace「2.4.37.el8.5.0」のバージョンが提供されていることが確認できます。
「Apache」をインストール
「Apache httpd 2.4」を以下コマンドでインストールします。
$ sudo yum -y install httpd
バージョン確認
インストールが正常に完了すると、以下コマンドでバージョン確認を実施します。
$ sudo httpd -version Server version: Apache/2.4.37 (centos) Server built: Nov 12 2021 04:57:27
インストールされたApacheのバージョンが「Apache/2.4.37 (centos)」であることが確認できます。
Apache「HTTP」サービス起動
Apacheをインストールしただけだと、Webサーバは起動しません。
「httpd」サービスを起動してWebサーバが立ち上がります。
インストール直前の「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)
ステータスは「inactive (dead)」となり、起動していないことが確認できます。
サービスを実行するために以下コマンドを実行してWebサーバーを起動します。
「httpd」通常起動
「httpd」サービスを起動するには以下のコマンドを実行します。
$ sudo systemctl start httpd
「httpd」自動起動
上記コマンドでは「httpd」サービスは起動しますが、停止後の起動や再起動後はサービスは止まってしまいます。
そのため、停止後や再起動後でもhttpdサービスを自動起動させるために「enable」オプションを使用します。
$ sudo systemctl enable httpd Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
「httpd」サービスのステータス確認
上記サービス起動後、以下のようにステータスが正常起動していることを確認します。
$ sudo systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2022-04-24 11:57:10 JST; 48s ago Docs: man:httpd.service(8) Main PID: 521037 (httpd) Status: "Running, listening on: port 80" Tasks: 213 (limit: 2778) Memory: 22.4M CGroup: /system.slice/httpd.service ├─521037 /usr/sbin/httpd -DFOREGROUND ├─521038 /usr/sbin/httpd -DFOREGROUND ├─521039 /usr/sbin/httpd -DFOREGROUND ├─521040 /usr/sbin/httpd -DFOREGROUND └─521041 /usr/sbin/httpd -DFOREGROUND 4月 24 11:57:09 118-27-15-211 systemd[1]: Starting The Apache HTTP Server... 4月 24 11:57:10 118-27-15-211 httpd[521037]: AH00558: httpd: Could not reliably determine the server's fully qualified domai> 4月 24 11:57:10 118-27-15-211 systemd[1]: Started The Apache HTTP Server. 4月 24 11:57:10 118-27-15-211 httpd[521037]: Server configured, listening on: port 80
サービスのステータスが「active (running)」となり正常に起動されていることが確認できます。
「ファイアウォール」通信許可設定
サーバーでhttpdサービスを起動するだけでは実際にブラウザでアクセスできない場合があります。
その際は、OSの「ファイアウォール」で通信許可を実施します。
Linux(CentOS)では「firewall-cmd」コマンドで通信許可設定を実施します。
以下コマンドでファイアウォールの状態を見ると「http(80)」のサービスが許可されていません。
$ firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: eth0 sources: services: cockpit dhcpv6-client ssh ports: protocols: forward: no masquerade: yes forward-ports: source-ports: icmp-blocks: rich rules:
http(80)の通信許可をするために以下コマンドで「http」サービスの通信を有効化します。
$ firewall-cmd --add-service=http --zone=public --permanent $ firewall-cmd --reload
上記コマンドを実行し、ファイアウォールで「http(80)」の通信が許可されていることが確認できます。
$ firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: eth0 sources: services: cockpit dhcpv6-client http ssh ports: 80/tcp protocols: forward: no masquerade: yes forward-ports: source-ports: icmp-blocks: rich rules:
Webサーバへアクセス「http(80)」
上記設定確認後、実際にブラウザを起動しWebサーバへアクセスします。
ブラウザはChrome、FirefoxなんでもOKですが、最近は通常のhttpへのアクセスはエラーとなる場合が多いので、本サイトでは「Chrome」でのアクセスを推奨します。
対象のURLへアクセスします。
自身のPCやサーバーで、Apacheインストール、サービスを起動した場合は以下のURLでアクセスします。
http://localhost
or
http://< IP address >
またリモート先からアクセスする場合は、通信ができるアドレスに対してアクセスします。
http://< IP address >
上記の画面のように正常にアクセスし、テストページが表示されると正常に接続できたことが確認できます。
LinuxサーバでのApacheインストール、起動手順は以上となります。
サーバーを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す