いよいよWEBサーバを構築する
使うソフトウェアはApache
最近はNginxも流行ってるみたい。へー
RedHat系でApacheをインストールするとき、httpdをインストールするんだって。
Ubuntuとかはapache2をインストールするみたい。
[root@localhost densichi]# dnf install httpd
無事インストールが完了したのでApacheを起動する。
[root@localhost ~]# systemctl start httpd
ついでに起動の確認もする。
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; preset: disabled)
Active: active (running) since Tue 2024-04-02 00:33:25 JST; 1min 23s ago
Docs: man:httpd.service(8)
Main PID: 4541 (httpd)
Status: "Total requests: 0; Idle/Busy workers 100/0;Requests/sec: 0; Bytes served/sec: 0 B/sec"
Tasks: 213 (limit: 11116)
Memory: 25.1M
CPU: 130ms
CGroup: /system.slice/httpd.service
tq4541 /usr/sbin/httpd -DFOREGROUND
tq4542 /usr/sbin/httpd -DFOREGROUND
tq4543 /usr/sbin/httpd -DFOREGROUND
tq4544 /usr/sbin/httpd -DFOREGROUND
mq4545 /usr/sbin/httpd -DFOREGROUND
Apr 02 00:33:25 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Apr 02 00:33:25 localhost.localdomain httpd[4541]: AH00558: httpd: Could not reliably determine the server's fully qualified do>
Apr 02 00:33:25 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
Apr 02 00:33:25 localhost.localdomain httpd[4541]: Server configured, listening on: port 80
[root@localhost ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; preset: disabled)
Active: active (running) since Tue 2024-04-02 00:33:25 JST; 1min 23s ago
Docs: man:httpd.service(8)
Main PID: 4541 (httpd)
Status: "Total requests: 0; Idle/Busy workers 100/0;Requests/sec: 0; Bytes served/sec: 0 B/sec"
Tasks: 213 (limit: 11116)
Memory: 25.1M
CPU: 130ms
CGroup: /system.slice/httpd.service
tq4541 /usr/sbin/httpd -DFOREGROUND
tq4542 /usr/sbin/httpd -DFOREGROUND
tq4543 /usr/sbin/httpd -DFOREGROUND
tq4544 /usr/sbin/httpd -DFOREGROUND
mq4545 /usr/sbin/httpd -DFOREGROUND
Apr 02 00:33:25 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Apr 02 00:33:25 localhost.localdomain httpd[4541]: AH00558: httpd: Could not reliably determine the server's fully qualified do>
Apr 02 00:33:25 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
Apr 02 00:33:25 localhost.localdomain httpd[4541]: Server configured, listening on: port 80
webブラウザからURLを入力する。
URL:http://127.0.0.1 でアクセスする。
無事アクセスできなかった。
原因はhttpポートが開いていないから。
Linuxのポート設定とVMソフトのポートフォワードを設定する。(ここは割愛)
firewall-cmdでhttpを許可する
まずはファイアウォールが設定されているネットワークを確認する
[root@localhost ~]# firewall-cmd --get-default-zone
public
ファイアウォールが設定されているネットワークはpublicだった。
publicネットワークのファイアウォールにhttpポートを許可する。
permanentオプションを付けると恒久的に許可できる。
[root@localhost ~]# firewall-cmd --zone=public --add-service=http --permanent
success
successなので成功。もう一回ファイアウォールの設定を見てみる
[root@localhost ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3
sources:
services: cockpit dhcpv6-client ssh
ports:
protocols:
forward: yes
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
services: cockpit dhcpv6-client ssh
http記述がない。まだhttp許可が反映されいないので、ファイアウォール設定を再読込する。
[root@localhost ~]# firewall-cmd --reload
success
もう一回設定を確認する
[root@localhost ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3
sources:
services: cockpit dhcpv6-client http ssh
ports:
protocols:
forward: yes
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
services: cockpit dhcpv6-client http ssh
http記述があるので成功
URL:http://127.0.0.1 でアクセスする。
無事アクセスできた。
次はApacheの設定を編集するぞ。