web-dev-qa-db-ja.com

ホスティングサーバーをレンタルせずに、サイトを世界中で利用可能にすることはできますか?

この質問は基本的なものですが、私はiOSのバックグラウンドであり、初心者でもあります。いくつかの混乱について明確な結論が必要です。

私はこの疑問に多くの矛盾を持っていると答えました。この質問についてGoogleで検索しました。あなたのサイトをインターネットで利用できるようにするために、必然的にあなたがする必要があると言う人もいます

(1) Amazon、GoDaddy、BigRockなどのホスティングサーバープロバイダーでWebサイトをホストします…

(2) Webサイトのドメイン名を取得します。一方、自分のサーバーでウェブサイトをホストし、世界中で利用できるようにすることができると言う人もいます。その特定の場合、クライアントはドメイン名ではなくIPを介して要求します。

私の質問は、次の条件でサイトを作成して世界中に公開できますか?

  • AmazonのようなホスティングサービスプロバイダーでWebサイトをホストする代わりに、自分のサーバーでホストします。帯域幅、パフォーマンス、稼働時間に関係なく。
  • ドメイン名は必要ありません。人々が私のパブリックIPを使用して私のサイトにアクセスしても、例えば123.456.789.0-好奇心のためにこの条件を追加するだけです。

前もって感謝します !!!

8
NSPratik

必要に応じて、ホームシステムでWebサイトをホストできます。ただし、注意点があります。一部のインターネットサービスプロバイダー(ISP)は、顧客が独自のサーバーをホストすることを許可していません。ホームユーザーが自分のサーバーをホストすることを許可しないISPは、サーバーが一般的に使用するポートのトラフィックをブロックする場合があります。たとえば、インターネットからホームユーザーに割り当てるIPアドレスの ポート25 への接続をブロックすることで、誰かが自分のメールサーバーを実行できないようにすることができます。同様に、デフォルトの portHTTP に使用し、ポート80、および に使用するデフォルトのポートをブロックすることにより、誰かが自分のWEBサーバーをホストするのを止めることができます。 HTTPS 、ポート443。Webサーバーを非標準ポートで実行することにより、このようなブロックを回避できる人がいるかもしれません。たとえば、Webサーバーがポート7080でHTTP接続をリッスンするように構成されている場合、サイトにアクセスする可能性のあるすべてのユーザーにそのポート番号を提供できれば、サーバーにアクセスできます。たとえば、 http://www.example.com/sompage.html または http://10.0.0.5/somepage.html を使用する代わりに、Webサイトへの訪問者 http://www.example.com:7080/somepage.html または http://10.0.0.5/sompage.html を使用できます。そのトラフィックでさえISPによってブロックされる可能性がありますが。

あなたのウェブサイトがほんの数人の友人によって訪問されることを期待している場合、そのソリューションは機能するかもしれませんが、ほとんどの人は訪問時にポート番号を含めることに慣れていないので、あなたのサイトの世界中のインターネット視聴者を望んでいる場合、より問題があるかもしれませんサイト。ただし、他のサイトからサイトにリンクしている場合、ポート番号が含まれている限りリンクは機能します。

ただし、ISPが独自のWebサーバーをホストすることを妨げないと仮定します。ルーターを設定して、 forward traffic デフォルトのHTTPポート、および場合によってはHTTPS(そのプロトコルも使用する場合)をWebサーバーの内部プライベートIPアドレスに設定する必要があります。 ローカルエリアネットワーク(LAN) 。ほとんどのホームユーザーは ネットワークアドレス変換 を実行するルーターを持っているため、これが必要です LAN 側のルーターの背後にあるシステムと「外部」のシステム間の通信、インターネット-ルーターの対面側、つまり Wide Area Network(WAN) 。つまり、ルーターの外部パブリックIPアドレスが1つありますが、ルーターの背後のシステムには複数の プライベートIPアドレス が存在する場合があります。たとえば、ルーターの背後に192.168.0.4のアドレスを持つラップトップと、192.168.0.5のIPアドレスを持つデスクトップシステムがあるとします。これらのプライベートIPアドレスはインターネット経由でルーティングされません。通常、ホームルーターはNATを実行して、1つのパブリックIPアドレスのみを参照する外部システムが、プライベートIPアドレスを持つルーターの背後にあるシステムと通信できるようにします。

ほとんどのホームルーターは、ネットワークアドレスと ポートアドレス変換 を実行する機能を提供します。通常、設定は非常に簡単です。必要なことを知っている必要があります。一部のルーターには 非武装地帯(DMZ) 設定があり、ルーターの外部からの接続がルーターの内部の特定のシステムに向かうように指定できます。ホームサーバーにNAT/PATを介してアクセスできるようにする場合は、 動的ホスト構成プロトコル(DHCP) を介して割り当てられるため、変更される可能性のある静的IPアドレスではなく、静的IPアドレスを割り当てる必要があります。 =、したがって、ルーターは着信接続を常に適切なシステムにルーティングできます。

ルーターの内部側のシステムのIPアドレスが変更される可能性があることに加えて、ホームネットワーク接続を使用している場合、ISPはおそらくDHCPを介してルーターの外部IPアドレスも割り当てます。 xxx.xxx.10.250としましょう。明日はxxx.xxx.10.251になるかもしれません。これは、ISPがDHCPを介して顧客にIPアドレスを割り当てるために使用する「リース時間」に依存します。リース時間は数時間、数日、1か月などになる可能性があります。したがって、xxx​​.xxx.10.250でWebサーバーにアクセスできると伝えた場合、変更するたびに新しいアドレスを伝える必要があります。ただし、一部のシステムでは、ISPが静的IPアドレスを提供せず、代わりに動的IPアドレスを提供する場合でも、ルーターを交換しない限り同じままです。たとえば、自宅のインターネットサービスの場合、静的IPアドレスはありませんが、長年に渡って変更されたのはルーターを交換したときだけなので、ISPの機器は異なるものを見ました Media Access Control 新しいルーターからのアドレス。

IPアドレスが頻繁に変更される場合でも、ISPから静的IPアドレスを購入できる場合があります。静的IPアドレスを月額料金でホームユーザーに販売するものもあれば、そうでないものもあります。

しかし、トラブルシューティングのためにホームユーザーのシステムに外部から接続したり、ホームベースのサーバーをセットアップしたりする必要がある場合に使用するソリューションは、 ダイナミックドメインネームシステム を使用することです。これにより、 完全修飾ドメイン名(FQDN) を使用してホームベースのサーバーにアクセスできます。ルーターの外部IPアドレスが異なる場合でも、martijn.example.com。 No-IP.com を使用しますが、他のDDNSサービスもあります。 DDNSが機能する方法は、DDNSサービスプロバイダーシステムと定期的に通信するルーターの内部LAN側のシステムにソフトウェアをインストールし、DDNSプロバイダーがシステムの通信元の現在の外部IPアドレスを知ることです。 。 DDNSプロバイダーは、 ドメインネームシステム(DNS) サーバーを更新します。これは、martijn.example.comなどのFQDNをIPアドレスに変換して、現在の外部IPアドレスを反映するサーバーですルーター。したがって、martijn.example.comをブラウザに入れると、正しいIPアドレスにリダイレクトされます。一部のルーターには、DDNSサービスプロバイダーを指定できる構成オプションがあるため、ホームシステムにソフトウェアをインストールしなくても機能する場合があります。 DDNSプロバイダーのアカウントが必要になります。

DDNSプロバイダーは、独自のドメイン名を使用するために料金を請求します。 martijn.com、独自のドメイン名を購入したい場合。ただし、DDNSプロバイダーが提供するドメイン名を使用する場合は、DDNSサービスを無料で使用することもできます(例: No-IPは無料サービスを提供します )。たとえば、プロバイダーがexample.comを所有している場合は、martijn.comの料金を支払う必要がありますが、martijn.example.comを無料で使用できる場合があります。つまり、特定のホスト名(例:martijn)を指定して、それらのドメイン名の1つで使用できます。

私は長年、ホームベースのWebサイトにこのような構成を使用してきました。かなり信頼性の高いインターネット接続があり、ISPがホームベースのサーバーへのアクセスをブロックしない場合、実際にはトラフィックの少ないサイトでかなりうまく機能します。たとえば、毎日数百人を超える訪問者があなたのサイトにいることを期待しておらず、利用可能な帯域幅がまだ飽和していない場合。しかし、ホームベースのサーバーをセットアップする際に、ホスティングサービスの使用を推奨する人がいる可能性があるため、上記で説明したような、考慮する必要がある考慮事項があります。

このような構成は、小規模または家庭ベースのビジネスにも使用できますが、外部IPアドレスが頻繁に変更される可能性があるため、Webサイトへのアクセスが重要な場合は、小規模または家庭ベースのビジネスにはお勧めしませんサイトにアクセスすると、システムはIPアドレスをキャッシュするため、次回サイトにアクセスしたときに、名前に関連付けられているIPアドレスを再度検索する必要はありません。このようなキャッシュされたDNSエントリには time to live(TTL) の値があるため、それらは期限切れになり、システムはIPアドレスを再度検索しますが、数分またはさらにシステムに留まることがあります時間。また、他のDNSサーバーもエントリをキャッシュします。たとえば、Maryがシステムがmartijn.example.comに接続しているComcastの顧客であるとします。彼女のシステムは、Comcast DNSサーバーに照会して、WebサイトのIPアドレスを取得する場合があります。これで、ComcastサーバーはFQDNに付随するIPアドレスを認識します。別のComcast顧客であるビルもあなたのサイトにアクセスしたいと考えています。彼は以前にあなたのサイトを訪れたことがないので、彼のシステムはmartijn.example.comとそのIPアドレス間の変換をキャッシュしていませんが、彼のシステムがComcast DNSサーバーを照会するとき、そのサーバーが既に関連付けられているアドレスを知っている場合FQDN、キャッシュから回答を提供します。

したがって、IPアドレスが変更された場合、サーバーまたはルーターがDDNSプロバイダーのDNSサーバーを1分以内に更新しても、他のユーザーが古いIPアドレスを取得する可能性があるため、システムまたはISPのDNSサーバーまでWebサイトにアクセスできません新しい現在のIPアドレスを取得します。キャッシングのため、TTL設定によっては、システムによっては何時間も後またはおそらく翌日でも古いIPアドレスに接続しようとする可能性があります。あなたのウェブサイトを家族や友人がアクセスできるようにしたいだけなら、それは深刻な問題ではないかもしれませんが、あなたがビジネスを運営しているなら、それは容認できない問題です。

アドレスコメントへの更新:

domain name registrar からドメイン名を購入するとき、多くの場合、それらのアドレスのドメイン名を介してアクセスできるシステムのIPアドレスを指定するオプションがあります。 「名前。したがって、レジストラに属するシステムを指します。独自のIPアドレスを指定する準備ができたら、レジストラは通常、必要に応じてドメイン名に関連付けられたIPアドレスを変更できるDNSサービスを提供します。多くの場合、DNSサービスを通じてTTL値、つまり FQDN で始まるIPアドレスをシステムがキャッシュする時間を調整できます。そのため、IPアドレスを頻繁に変更する必要があると思われる場合は、短いTTLを指定します。レジストラには、指定可能な最小のTTLがある場合があります(5分または30分など)。値は通常秒単位で指定されるため、5分のTTLは300として表示されます。

そのため、レジストラのDNSサービスを使用している場合は、レジストラでアカウントにログインし、変更があるたびにドメイン名に関連付けられたIPアドレスを手動で変更する必要があります。または、代わりにDDNSサービスプロバイダーを使用して、FQDNからIPアドレスへの変換の変更が自動的に行われるようにすることもできます。 DDNSサービスプロバイダーからドメイン名を購入し、デフォルトでDNSサーバーを使用するか、別のレジストラーからドメイン名を購入し、ドメインが提供するWebサイトの構成ページからDDNSプロバイダーのネームサーバーのIPアドレスを指定することができます。名前レジストラ

別のオプションは、独自のDNSサーバーを実行することです。ドメイン名を購入する際に、ドメイン名で使用するネームサーバー(レジストラのネームサーバーまたは他のネームサーバー)を指定できます。たとえば、Webサーバーと同じシステムをDNSサーバーにすることができます。 UDP および TCP IPプロトコルの場合、DNSのデフォルトポートであるポート53でサーバーにアクセスできることを確認する必要があります。その後、サーバーにスクリプト/プログラムを作成して、ルーターに割り当てられている外部IPアドレスを定期的に確認し、DNSサーバーのドメイン名の zone file を更新できます。ただし、DNSサーバーのセットアップは、DDNSプロバイダーに依存するよりもはるかに複雑です。 DNSサーバーをオンラインで設定するためのチュートリアルを見つけることができます(より複雑なルートを追求したい場合)。 BIND は、LinuxシステムのDNSサービスによく使用されます。 MicrosoftのサーバーバージョンのWindows、たとえば、Windows Server 2012には、 Microsoftが提供するDNSサービス も使用できます。レジストラのDNSサービスから始めることをお勧めします。これは通常、レジストラからドメイン名を購入した場合は無料です。ただし、独自のDNSサーバーを実行するというより難しいパスに乗り出したいと思ったとしてもです。 DNSサーバーなど、インターネットの基盤がどのように機能するかを知りたい場合を除き、ほとんどの人にとって、レジストラまたはDDNSサービスプロバイダーのDNSサーバーを使用するのが最善の方法です。 OpenDNS など、DNSサービスに特化した企業を通じてDNSサービスを取得することもできます。

ただし、短いTTL値を指定して自動更新する場合でも、新しい[…]を取得するまでにTTLよりも大きな遅延が発生する可能性があることに注意してください。 IPアドレスと、インターネット上のすべてのシステムが古いIPアドレスの使用を停止し、新しいIPアドレスを使用する時間。たとえば、GoDaddyの記事をご覧ください。 DNS伝播時間に影響する要因は? (GoDaddyはドメイン名レジストラです)、インターネット上のすべてのシステムで新しいアドレスが利用可能になるまでに最大48時間かかる可能性がある理由を説明しています。たとえば、「ISPによってはTTL設定を無視し、2〜3日ごとにキャッシュされたレコードのみを更新する」という記事があります。

12
moonpoint

はい、自分のサーバーでホストできます。静的IPを使用している場合は、ネットワークをサーバーであるかのように設定するだけで機能します。問題についてはたくさんの発見があります。

ドメイン名は必要ありません。ドメイン名は一般ユーザー用であり、IPアドレスよりも名前を覚える方がはるかに簡単です。連絡先リストを考えると、実際の電話番号よりも名前を覚える方が簡単です。
ドメイン名を表示する最も簡単な方法はエイリアスです。 IPアドレスに複数のサイトがある大規模なサーバーでは、サイトを区別するためにも使用されます(たとえば、siteAとBが両方とも同じIPを指す場合、対応するサーバーは、サイトAまたはBを表示するように設定する必要があります要求)。

例: 64.15.117.85 (心配する必要はありません。ただのGoogleです。それともそうですか?)

独自のサーバーを使用することはお勧めしません。安価なサーバー/ホスティング業者はたくさんあります。あなたは少しお金を節約するかもしれません(しかし、私はそれを疑います)が、そこに新しいドメインを設定するのが簡単なことはそのIMOを上回ります。ほとんどのホスティング事業者はほとんどプラグアンドプレイですが、独自のサーバー、適切なファイアウォール、ウイルス対策、更新のセットアップには多くの時間とメンテナンスが必要です。

4
Martijn

自分のコンピューターでホスティングを開始できます。私は自分のコンピューターで最初のWebサイトをホストし始めました。今、私はウェブサイトから生計を立てています。しかし、そうするときは注意してください:

  • あなたの家は、ひどい稼働時間になるでしょう。あなたのサイトは、吹雪、交通事故、帯域幅を占有する隣人、電子レンジが回線をトリップする、ISPがポートをブロックするなど、さまざまな理由でオフラインになります。
  • あなたの家への帯域幅はひどいです。まともなアップロード速度を提供する家庭用ISPはほとんどありません(これはサーバーを実行するために必要なものです)。ローカルISPが優れていても、取得する帯域幅は大規模なWebサイトを実行するのに十分ではありません。

ほとんどのWebサイトはデータセンターでホストされています。これらのデータセンターにはバックアップ電源があり、インターネットバックボーンの近くにあるため、自宅の帯域幅よりもはるかに安価に追加の帯域幅を取得できます。

自宅でWebサイトをホストすることから始められますが、十分に大きくなったら、移動する準備をしてください。最初のホスティングプランの費用は、年間50〜100ドルです。あなたはおそらく家のインターネットサービスの月ごとにそれを支払っているので、オーバーヘッドは非常に最小限です。多くのWebサイトをホストしているコンピューターでアカウントを取得する「共有ホスティング」から始めます。

WebサイトにIPアドレスを使用することも理想的ではありません。ほとんどの住宅ISPは、DHCPを使用してアドレスを自動的に割り当てます。アドレスは時々変更できます(また変更されます)。これを回避するには、「ダイナミックDNS」を使用できます。一部のダイナミックDNSプロバイダーは、サブドメインを無料で提供します(mysite.example.com)。コンピューターは、動的DNSサーバーにpingを実行し、IPアドレスが変更されるとサイトのIPアドレスを変更します。

最初のホスティングを取得する前であっても、独自のドメイン名の購入を検討する必要があります。多くの場合、動的DNSサービスで独自のホスト名を使用できます。ドメイン名の費用は、年間10ドル前後です。

4

私の質問は、次の条件でサイトを作成して世界中に公開できますか?

AmazonのようなホスティングサービスプロバイダーでWebサイトをホストする代わりに、自分のサーバーでホストします。帯域幅、パフォーマンス、稼働時間に関係なく。

はい。

ドメイン名は必要ありません。人々が私のパブリックIPを使用して私のサイトにアクセスしても、例えば123.456.789.0

一般公開されているWebサイトをホストするためにドメイン名は必要ありません。

他の答えはさらに詳しく説明しますが、最も単純な構成は、 Apache for Windows などのWebサーバーをダウンロードし、サイトのホストに使用するコンピューターにセットアップすることです。最大限の互換性を確保するには、32ビットバージョンをお勧めします。

ファイルを解凍してC:\ Apache24にコピーします。

「conf」フォルダの下のApacheインストールディレクトリにある「http.conf」と呼ばれる編集する必要がある設定ファイルもあります。 「ServerName」とマークされた行のコメントを解除し(#を削除)、変更を保存します。後で他の変更を行う必要がある場合や必要がある場合がありますが、今のところはこれで十分です。

Windows上のApacheの参照バージョンに推奨されているようにC:\ Apache24にインストールした場合、技術的には実行中のWebサーバーがあり、Apache「bin」ディレクトリの「httpd.exe」をダブルクリックして起動できます。 「It Works!」が表示されるはずです。サーバーのローカルネットワークIPをブラウザーに入力した場合ex。 192.0.0.100。

Linuxを使用している場合は、Apacheがすでにインストールされており、別の手順を実行する必要があります。

Apacheが正しく実行されていることが確認されたら、ルーターでポート転送を使用して(ポートがある場合)、ポート80の要求をApacheを実行しているコンピューターに転送します。

すべてがうまくいけば、これで十分です。Apacheは、パブリックIPアドレスexを介して「インターネット」から利用できるはずです。 68.69.70.250。

ファイアウォールとウイルス対策ソフトウェアは、ローカルネットワーク外のサイトの表示を妨げる​​場合があることに注意してください。また、ローカルネットワーク上にないデバイスを介してテストすることをお勧めします(たとえば、携帯電話のブラウザーでサイトにアクセスしてみてください)。端的に言えば、一部のルーターには、元のサイトへのアクセスに問題があります。そのサイトがローカルネットワーク上にある場合は68.69.70.250(「NATヘアピニング」を参照)。

3
Anaksunaman

wordpressやbloggerなどの無料のブログプラットフォームをお勧めします。ホスティングやドメインについて心配する必要はありません。また、ウェブサイトを立ち上げて実行するための無料のテーマがたくさんあります。

1