【完全無料でできる】自宅PCでホームページを公開する

xampp-DiCE-NATホームページ
【ATERM】自宅サーバの公開
自宅サーバを公開しているんですが、ルーターまわりを代えたら突然インターネットからアクセスできなくなりました。これは自宅サーバの公開手順というよりかは公開できなくなった原因をピンポイントで対処した方法となります。やはりルーター関連はむずかしいですね。

前にルータの穴あけ(ポート開放)の話を少ししましたが、今回はサーバ側の設定方法を記載します
Webサーバとしてホームページを公開するのなら、普通のPCでも実現可能です

一般的なホームページの公開であれば、スペック的にはPCで問題ありませんが
ダウンロードサイトや一日に1000アクセス以上であればホスティングサービスやレンタルサーバを考えた方がよいと思います

おすすめのレンタルサーバは最後に紹介します

ホームページ公開までの手順

自宅PCでのホームページ公開までの手順を記載します
今回は以下の前提でホームページを公開します

・Windows(10)がインストールされている自宅PCでホームページ公開をする
・Windowsにはパーソナルファイアウォール(FW)がインストールされている
・自宅PCからルータやONUなどを通じてインターネット接続している
・インターネットのアドレス(グローバルアドレス)は固定アドレスではない

 

事前に自宅PCにてローカル環境を作りたいときはこちらの記事が参考になります

準備すること

自宅環境でホームページ公開には以下のことが必要となります

・Webサービスの起動
・DDNSの設定
・ルータの設定(NAT)
・パーソナルファイアウォールの設定

 

また、実際の自宅の環境はこんな感じなので、こちらを基にお話しします

auひかり:
①自宅サーバ(PC)、②無線LANルータ、③ルータ、④モジュラージャック ※終端装置は管理室にある
zitaku-kankyo1

詳細は以下となります

Webサービスの起動

インターネットでホームページを見るのはhttpとhttpsというプロトコルを使います
Google Chromeなどのブラウザでアドレスを入力するときにhttp://~とかhttps://~とかで
始まるのがこれにあたります

このプロトコルというのはルータやFWの穴あけをするのに必要な情報なので覚えときましょう

なので自宅PC側でこのプロトコルを使うアプリケーションを起動させる必要があります

Windows PCであれば「プログラムと機能」から「Windowsの機能の有効化または無効化」で対象のアプリケーションを追加できますが、使い勝手の面を考えて今回はフリーソフトの「XAMPP」を使用します

このXAMPPはWindows上でもApache(Webサービス)とMySQL(データベース)、PHP、PerlやTomcatも動作させることができます

これはWebサーバとしての機能が全部つまっています

人によってはApacheしか使わないひともいるでしょうけど、WordPressでホームページ作るなら
MySQLも必要になります
動作も重くないし、管理画面から各サービスを一律管理できるので運用も楽です

とりあえずApacheを起動させるだけでホームページは表示できます

インストール手順や操作方法はこちら

【XAMPP】インストールと使い方
自宅サーバ公開する上で手軽に使えるXAMPPのインストール方法と簡単にはなりますが使い方を説明します。どちらかというと機能紹介ですが、このツールの操作はそんなに難しくありません。サービスの操作方法とログの見方がわかれば問題ないと思います。

 

DDNSの設定

インターネットから自宅PCのホームページにアクセスするときはプロバイダから割り当てられたIPアドレス(グローバルIPアドレス)宛に通信しますが、固定IPアドレスでなければ一定期間またはルータの再起動のたびにアドレスが変わってしまいます
また、ホームページ公開するにあたって、通常は数字表記のIPアドレスではなく”名前”にします

この”名前”のことを「ホスト名(ドメイン名)」といいます
ホスト名にする利点は、IPアドレスが変わってしまってもホスト名(ドメイン名)は勝手には変わらないということです

もっと細かく説明するとこういうことになります

例①:ルータのグローバルIPアドレスは10.20.30.40の場合(アドレスは固定)
インターネットを経由してhttps://10.20.30.40でアクセスする

例②:ルータのグローバルIPアドレスはが10.20.30.40 or 60の時(アドレスは固定ではない)
インターネットを経由してhttps://10.20.30.40でアクセスする
↓ でも、アドレスが変わっちゃうと・・・
インターネットを経由してhttps://10.20.30.60でアクセスしなければいけない

その時によって「10.20.30.40」と「10.20.30.60」のどちらかを選択する必要がでてきてしまいます

そこで、DDNSを使います

DDNSとは、グローバルIPアドレスが変更になった時に新しいIPアドレスをDNSサーバに通知して
固定のホスト名(ドメイン名)につないでくれるサービスのことです
DNSサーバというのは、アドレスとホスト名を紐づけの情報(レコード)を参照できるサーバです
普段何気なくインターネットを使っていますが、固定のホスト名(ドメイン名)でアクセスする場合は、意識しないだけであって頻繁にDNSサーバを使用(参照)しています

つまり、https://hogehoge.comにアクセスするときにDNSサーバを見に行くわけです
IPアドレスが変わっても、DDNSの仕組みで以下のように更新するので、問題なくアクセスできます

DNSレコード

hogehoge.com10.20.30.40

↓ アドレスが変更するとDNSレコードの内容が変わる

hogehoge.com10.20.30.60

 

今回はDiCEというツールを利用してDDNS環境を構築します

【DiCE DynamicDNS】インストールと使い方
ホームページを公開するためにhttp(s)で始まるアドレスを作成しなければいけませんが、自宅サーバの場合DDNSのサービスに対応しているところで作成すれば作業が楽です。DDNSとはグローバルアドレスが変わってもツールを使えばアドレス更新を自動化できます。

 

それが「面倒だ」「よくわからない」という方、もう自宅環境を固定IPにしちゃうという方法もあります

ASAHIネット

ご自宅にネット環境が無い方はASAHIネットでインターネット開通させれば、固定IPが月額880円(業界最安級)で利用できます
※インターネット利用料金は別料金となります

 

インターリンク

即日開通ということで、申し込みすればすぐに使える便利さ!
そして、最大2か月の無料体験があり、固定IPを無料で試すことができます

詳細はこちらの記事を見ていただければと思います

 

ルータの設定(NAT)

ルータ穴開けの一環として冒頭で過去記事を紹介しましたが
もう少し詳しく話すと家庭用ルータはFW機能もあるので、NATを設定しなければ
自宅内にあるPCにアクセスできません

便宜上は「ルータやFWの設定を変更して通信をできるようにする」なので、ルータの穴あけ(ポート開放)などと言いますが、インターネットから内部にアクセスさせるときはNAT設定はほぼ必須となります

このNATというのは、グローバルアドレスを内部のプライベートアドレスに変換する仕組みです
ポートも変換できます

ポートというのは番号で表され、各プロトコルによってポート番号が変わってきます
例えば、httpだったら”80”、httpsだったら”443”になります
アプリケーションやサービスごとに使うポートが違うということになります

プライベートIPアドレスというのはグローバルIPアドレスと違い自由に割り当てられるアドレスですが
インターネット上には無いアドレスです
ルータ内・・・つまり、自宅環境で使用するアドレスとなります
大抵の家庭は192.168.0.0~192.168.255.254のアドレスが割り当たってるのではないでしょうか

ちなみにこちらのアドレスは自動で割り当てるか手動で割り当てるかのどちらかです
自宅PCをホームページとして公開するのなら手動で割り当てるのがいいと思います
手動アドレスは対象PCに直で設定します

自動割り当てだとアドレスが変わってしまうことがあります
尚、アドレスを割り当ててくれるのは、ルータのDHCP機能というものを使います

NATの設定は以下のようなイメージ図になりますzitaku-kankyo4

インターネットからのアクセスがhttp://10.20.30.40にくれば、ルータのNAT処理で
自宅にあるホームページ用PC(192.168.11.1:8080)に勝手にアクセスさせてくれます

※httpは80番ポート

ルータによっては他にも設定項目があったりするので、下記を参考にしてください

【ATERM】自宅サーバの公開
自宅サーバを公開しているんですが、ルーターまわりを代えたら突然インターネットからアクセスできなくなりました。これは自宅サーバの公開手順というよりかは公開できなくなった原因をピンポイントで対処した方法となります。やはりルーター関連はむずかしいですね。

NATの設定を「NATテーブル」とか「ポート変換テーブル」と言ったりしますが、以下のようになります(画像はAirStation)
他の機器に関しては、手持ちにないので詳細な手順は言えませんが、イメージとしてはこんな感じになります

airstation-nat

”Group01”という設定内容は
「ルータのグローバルIPアドレス」宛てに「HTTP(80)」アクセスが来たら
自宅内にある「192.168.11.6」(パソコン)の「HTTP(80)」にアクセスさせます

ざっくり言うと
「家のルータにHTTPアクセスすると、自宅内にある192.168.11.6のパソコンにHTTPアクセス
できますよ~」 ってことですね

パーソナルファイアウォールの設定

パーソナルファイアーウォールがホームページを公開するPCにインストールされている前提でお話します
また、どのソフトがインストールされているかは、その環境によってまちまちでしょう

ホームページを公開する場合は外部からのアクセスがくるので、大抵遮断するような設定になっているはずです
ファイアーウォールをOFFにすることで、アクセスを通すこともできますが、リスクが大きすぎるのでやめましょう(一時的な切り分けだったらいいですが)

パーソナルファイアーウォールの設定変更はhttp(80)https(443)などのホームページ用のポートを開放するだけでよいと思いますが、ソフトによっては外部IPからの接続も許可しなくてはいけないかもしれません

インターネットからの接続確認をするときにパーソナルファイアウォールのログを見ることができれば
通信できなかった時の原因が見つけやすくなります

 

最後に

自宅PCでホームページを公開する方法をまとめてみましたが、いかがでしたでしょうか

ポイントをまとめると以下のようになります

対象のPC上で「Webサービスを起動」させ「パーソナルファイアウォールの対象ポートを開放」します
同じくPC上で「DDNSの設定」をして「ルータの設定(NAT)」によって、インターネットからアクセスさせるようにする

 

ちなみに自分は自宅PCにWordPressをインストールして検証用として使用しています
また、ホームページだけでなくサーバの検証環境としてRDPやSSHでログインさせたりとかも可能です

ただ、メインのホームページはレンタルサーバにしました
お金がかかってしまいますが、自宅PCより安定運用と高速表示が望めるからです

次の2点以上を考えるならレンタルサーバがよいです

・WordPressでホームページ作成する
・安定稼働
・アクセス数(500/一日)
・Webページの表示スピード

ちなみにこのホームページはロリポップベーシックプラン(旧ハイスピードプラン)」になります
選り好みとかいろいろありますが、初心者さんならエックスサーバロリポップConoHa WINGがおすすめです

昔からよく議論されていることですけど
パフォーマンスのXserver
コスパのロリポップ

初心者に優しい操作バランスのConoHa WING
ですかね

エックスサーバやロリポップやConoHa WINGなら以下の手順で初めての方でも簡単にホームページ公開できます

 

なお、各サーバの評判はTwitterではこんな感じ

自宅PCでホームページを公開してコンテンツを増やしつつ、折を見てレンタルサーバに移行という流れが、費用的に効率が良いと思いますが「移行」がワンクッション入る手間を考えると、最初からレンタルサーバで構築した方がよいかもしれません

また、大抵どのレンタルサーバも無料のお試し期間があるので、そこでパフォーマンスを確認した方がいいですね
レンタルサーバと自分のホームページの相性(表示スピードとか)確認もこの期間中にやっちゃえばレンタルサーバの選定で間違えることもないでしょう

リンクはこちら

ロリポップ!

エックスサーバー

この2つのレンタルサーバ深堀してみます

【サイトに合った選択】ロリポップとエックスサーバーの比較
ロリポップとエックスサーバどちらのサービスでホームページ公開したらいいか悩みます。この記事は選定の一つの基準を解説します。結局最終的にはパフォーマンス的な部分が多いと思います。せっかくお金を払ってるのに表示スピードが遅いのだったら意味がありません。そうならない為の方法を紹介します
タイトルとURLをコピーしました