Webサイトが外部から表示されない場合の確認手順

[更新:2026年10月14日]

VPSにWebサーバーをインストールして起動したものの、お手元のPCのブラウザからWebサイトが表示されない場合の確認手順を記載します。
VPS内部から外部へ向かって、原因になりやすい箇所を順番に確認していきます。Webサイトの公開前後の確認項目としてもご利用いただけます。

該当する症状

  • Apache、Nginx等をインストールして起動したが、ブラウザから表示されない

  • ブラウザに「タイムアウト」「接続できません」と表示される

  • IPアドレスを指定すると表示されるが、ドメイン名では表示されない

  • HTTP(80番)では表示されるが、HTTPS(443番)では表示されない

確認の流れ

Step

確認すること

確認する場所

1

Webサーバーが起動し、ポートで待ち受けているか

VPS内部

2

VPS内部からWebサーバーへ接続できるか

VPS内部

3

OS内のファイアウォールが通信を許可しているか

VPS内部

4

パケットフィルターが通信を許可しているか

コントロールパネル

5

お手元のPCからIPアドレスで接続できるか

お手元のPC

6

ドメイン名が正しいIPアドレスを指しているか

お手元のPC

7

HTTPS(443番)で接続できるか

お手元のPC

Note

本文書のコマンドは、VPS内部ではroot権限(または sudo)で実行してください。
Step1〜3のコマンドは、標準OSのUbuntu、Rocky Linux、AlmaLinux、Debianを例にしています。OSによってコマンドが異なる場合は、その旨を記載しています。

対応方法

Step1. Webサーバーが起動し、ポートで待ち受けているか確認する

Webサーバーが起動していることを確認します。サービス名は、利用しているWebサーバーとOSによって異なります。

Webサーバー

Ubuntu、Debian

Rocky Linux、AlmaLinux

Apache

apache2

httpd

Nginx

nginx

nginx

Nginxが起動しているか確認する場合
# systemctl status nginx

active (running) と表示されていれば、起動しています。起動していない場合は、Webサーバーのログを確認してください。

続いて、Webサーバーが80番ポート(HTTPSの場合は443番ポート)で待ち受けているか確認します。

80番、443番ポートで待ち受けているか確認する場合
# ss -tlnp | grep -E ':(80|443) '
LISTEN の行が表示されていれば、待ち受けています。
0.0.0.0:80 や [::]:80 のように表示される場合は、すべてのIPアドレスから受け付けています。 127.0.0.1:80 と表示される場合は、VPS内部からの接続のみを受け付ける設定になっているため、Webサーバーの設定(listenするアドレス)を確認してください。

Step2. VPS内部からWebサーバーへ接続できるか確認する

VPS内部から、Webサーバーへ接続します。

VPS内部からWebサーバーへ接続する場合
# curl -I http://localhost/

HTTP/1.1 200 OK のように、HTTPのステータスが表示されれば、Webサーバーは応答しています。

応答がない場合や、エラーが表示される場合は、Webサーバー自体の問題です。Webサーバーの設定ファイルとログを確認してください。
403 Forbidden や 404 Not Found が表示される場合は、公開するファイルの配置場所や、ファイルのアクセス権限を確認してください。

Step3. OS内のファイアウォールが通信を許可しているか確認する

OS内のファイアウォールで、80番(HTTPSの場合は443番)ポートへの通信が許可されているか確認します。
標準OSのUbuntu 24.04、Rocky Linux 10では、OS内のファイアウォールは初期状態で有効になっていません。有効にしていない場合は、この確認は不要です。次のStep4へ進んでください。
ufwの設定を確認する場合(Ubuntu)
# ufw status
firewalldの設定を確認する場合(Rocky Linux、AlmaLinux)
# firewall-cmd --list-all --zone=public
ufwで Status: inactive 、firewalldで not running と表示される場合は、OS内のファイアウォールは有効になっていません。
有効にしている場合は、ufwでは 80/tcp が ALLOW になっていること、firewalldでは services に http (HTTPSの場合は https )が含まれていることを確認します。
許可されていない場合は、 ufwの設定方法 、または Firewalldの設定方法 をご参照のうえ、通信を許可してください。

Step4. パケットフィルターが通信を許可しているか確認する

コントロールパネルのパケットフィルターで、80番(HTTPSの場合は443番)ポートへの通信が許可されているか確認します。
「Web」(80/443)を選択すると、80番と443番の両方を許可できます。設定方法は パケットフィルター をご参照ください。

Note

パケットフィルターとOS内のファイアウォールは、それぞれ別に設定します。OS内のファイアウォールを有効にしている場合は、Step3とStep4の両方で許可されていないと、外部から接続できません。

Step5. お手元のPCからIPアドレスで接続できるか確認する

お手元のPCから、VPSのIPアドレスを指定して接続します。IPアドレスは、コントロールパネルで確認できます( IPアドレスに関するご質問 )。

お手元のPCからIPアドレスを指定して接続する場合(macOS、Linux)
$ curl -I http://XXX.XXX.XXX.XXX/
お手元のPCから80番ポートへの到達性を確認する場合(Windows)
> Test-NetConnection XXX.XXX.XXX.XXX -Port 80
Step1〜4に問題がなく、ここで HTTP/1.1 200 OK が表示されれば(Windowsでは TcpTestSucceeded が True であれば)、IPアドレスでの公開はできています。
表示されない場合は、 症状から調べる(トラブルシュートの入口) の「遮断している場所を切り分ける」、および 特定のポート(サービス)への通信ができない場合 をご参照ください。

Step6. ドメイン名が正しいIPアドレスを指しているか確認する

IPアドレスでは表示されるが、ドメイン名では表示されない場合は、ドメインの設定を確認します。

ドメインが指しているIPアドレスを確認する場合
> nslookup example.com

出力される Address の値が、ご利用のVPSのIPアドレスと一致しているか確認してください。一致しない場合の対応は、 接続できない原因を切り分ける(ドメイン・IP・ポート) のStep1をご参照ください。

Step7. HTTPS(443番)で接続できるか確認する

HTTP(80番)では表示されるが、HTTPS(443番)では表示されない場合は、次の点を確認してください。

  • Step3、Step4で、443番ポートへの通信を許可しているか

  • Step1で、Webサーバーが443番ポートで待ち受けているか(HTTPSの設定が有効になっているか)

お手元のPCからHTTPSで接続する場合(macOS、Linux)
$ curl -I https://example.com/

それでも解決しない場合

上記の手順で解決しない場合は、公式サポート窓口までご連絡ください。