GNU / LinuxでWebサーバーをセットアップしてWebをホストする方法

Web URL

あなたが今までにどのようにいくつか疑問に思ったことがあるなら ホスティングサービス ネットワークに存在するものは、WebページまたはWebサーバーとは何か、およびその機能(一部のWebページのURLに表示されるバー、クライアントがWebページにリモートで接続する方法など)をホストできます。この記事では、それを明確にします。 サーバーとは何かという概念だけでなく、簡単なチュートリアルのおかげで、独自のWebサーバーを作成する方法も段階的に説明します。

今日、私たちは皆、あらゆる種類のリモートサービスと、繁栄しているクラウドコンピューティングを使用していますが、他のサービスよりも際立っているサービスがある場合は、おそらくそれが提供するサービスです。 Webサーバー、お気に入りのニュースを読むために毎日アクセスするWebサイトはたくさんあるので、GMailなどのサービスを提供するWebインターフェイスからの電子メールをチェックし、取引を行い、仕事をし、オンラインで購入します。 誰もこれらのサービスから逃れることはできませんよね? しかし、そのユーザーの多くにとって、彼らは彼らの背後にあるものについてまだ不明です...

サーバーとは何ですか?

サーバーファーム

一部のユーザーは サーバーは特別なものです、それが実際にあるものとは非常に異なる何か。 しかし、簡単に言えば、サーバーは私たちの家にあるようなコンピューターにすぎません。クライアントとして機能するのではなく、サーバーとして機能する、つまりサービスを提供するだけです。 その場合、サーバーが出てきたときにテレビや他のメディアで見られる画像が非常にまれである理由を考えるかもしれません...

さて、私がここに含めたようなそれらの画像はの画像です サーバーファーム。 これは、単一のサーバーとして連携して動作する一連のコンピューターのクラスターに付けられた名前です。 これらのサーバーが通常提供するサービスは、コンピューター、スマートフォン、タブレット、スマートTVなどでクライアントとして機能する数百、数千、または数百万のユーザーを対象としていることに注意してください。 したがって、彼らが処理しなければならない容量は、家庭用コンピュータの容量よりもはるかに高くなります。

Twitterのようなサービス、このソーシャルネットワークのユーザー数、毎秒転送されるファイルやメッセージの数について考える必要があります。 あなたがそれについて考えるならば、それは 大量のデータそのため、自宅のような接続や通常のパソコンでは無効です。 これらすべてのユーザーのアクセスに遅延がなく、すべての情報をホストできるように必要な容量を与えるために、非常に高速な接続が必要です。

これで私が意味するのは このサービス 数十または数百の「コンピューター」が使用されています ラック付きのキャビネットに収納されている、自宅で使用できるもののように。 しかし、本質的には、それらのそれぞれは、私たちの家にあるようなデスクトップコンピュータからそれほど遠くありません。 AMD EPYC、Intel Xeonなどの特別なマイクロプロセッサを搭載しているものもあれば、RAIDとして構成されたハードドライブを搭載しているものもあります。いずれかが故障した場合に情報が失われるのを防ぐためですが、私が言うように、これらはあなたが今管理しているもの、そして私はあなたのPCを控えめなサーバーに変える方法を説明するのでこれをあなたに話します...

もちろんこれら サーバーには多くの種類があります、ストレージなどのクラウドサービスを提供するもの、電子メールサービス、Webサーバーを提供するもの、DNS、NTP、DHCP、LDAPなどのサービスを提供するものがあります。つまり、後者はすべて非常に一部のISP(インターネットサービスプロバイダー)やインターネットサービスプロバイダーが提供するサービスであるため、必要であり、気付かずに毎日確実に使用してください。

Webページとは何ですか?

さまざまなデバイス上のWebサイト

いくつかのウェブサーバーは、ホスティングまたはホスティングを提供することを以前に述べました ウェブページ。 ウェブページは、テキストのみ、または特定のプログラミング言語やスクリプト(Perl、JavaScript)で記述されたウェブアプリなどの他のコンテンツのみを含めることができる電子情報またはデジタル情報(HTML、PHP、CSSなど)のセットです、RoRまたはRuby on Railsフレームワークを備えたRuby、PHPなど)、マルチメディアコンテンツ(画像、ビデオ、サウンドなど)、および通常、この同じWebページ上の別の場所または別の場所に移動するリンク。

これを可能にするために、それらをホストするWebサーバーがあります。つまり、このすべてのデータをハードドライブに保存し、次のような一連のネットワークプロトコルも保存します。 HTTP (ハイパーテキスト転送プロトコル)およびHTTPS(SSL / TLS証明書セキュリティを備えたHTTP)。 後で説明するように、ソフトウェアがこれを処理します。つまり、クライアントに双方向接続を実装し、ハイパーテキストコンテンツをナビゲートできるようにします。つまり、適応された情報を共有、リンク、および操作する手段です。 WWW(World Wide Web)へ。

それはどのように動作しますか?

クライアント/サーバー接続

ええと、私たちはすでにウェブとウェブサーバーが何であるかを知っており、私自身の方法と簡単な言語で説明されているので、この技術の知識がなくても多かれ少なかれ誰もがそれを理解できます。 そして今、私はこのセクションを続けます。そこでは、 このクライアントサーバーシステムの運用。 しかし、このために、最初にXNUMXつを区別します。

  • 顧客:クライアントは、ラップトップ、デスクトップ、タブレット、スマートフォンなど、デバイスからWebサイトにアクセスするユーザーです。 アクセスするには、インターネット接続とWebブラウザーが必要です。これは、クライアント側で非常に重要なソフトウェアであり、すべてのWebコンテンツをユーザーフレンドリーな方法で表示し、ユーザーが操作できるようにします。 そして、このために必要なのはWebページまたはIPのアドレスだけです...ただし、キーワードを介して許可する検索エンジン(例:Google)があるため、これは必ずしもアクセスする必要はないと思われるかもしれません。インデックスに登録されたこれらのウェブサイトを表示します。その通りです。
  • サーバ:説明したように、すべてのデータとサーバーとして機能するソフトウェアが含まれます。つまり、クライアントが接続して必要なことをすべて実行できるようにします。 Webサーバーの場合、たとえば、Apache、Lighttpdなどになります。

他に指摘したいのですが、ご存知のように、 IPアドレス これは、ネットワークに接続されているマシンを識別するものです。この場合は、WebサーバーのIPになります。 幾つかある このようなサービス お気に入りのページのIPが表示されます。たとえば、google.esを検索すると、このサービスがホストされているサーバーに対応するIPが表示されます。 Webブラウザのアドレスバーにこの番号を入力しようとすると、www.google.esと上記のIPの両方を入力すると、どちらの場合もGoogleが表示されます。

なぜ私はこれを言うのですか? それは私がリンクするのに役立つからです DNSサーバー。 これらのサーバーは、Webサイトの名前とそれに対応するIPのテーブルを含む他のサービスであるため、誰かがIPを使用せずに名前でアドレスを検索すると、サーバーはブラウザーにそのWebサイトのコンテンツを表示させます。 これは、人間にとってより直感的にするために行われます。 これらの数字を簡単に覚えることはできませんが、お気に入りのWebサイトの名前は覚えていますよね?

そして、私は何を指定することで終わります URL(Uniform Resource Locator) または、Webサイトにアクセスしたときにブラウザのバーの上部に表示されるUniform ResourceLocatorです。 たとえば、ドメインmyweb.esを登録するとします。 この場合、そのドメインはあなたのものになり、あなたはそれを使ってあなたのウェブページを表示することができます。 誰かがアドレスhttp://www.miweb.es/info/inicio.html#webにアクセスすると想像してください。

  • http://:HTTPS、FTPなどの場合もありますが、HTTPプロトコルを使用してアクセスしていることを示します。 ただし、この場合は最初であるため、Webコンテンツです。
  • WWW:あなたはそれがワールドワイドウェブからのものであることを知っています。
  • myweb.es:これは、登録したドメイン、つまり、Webサイトを含むサーバーまたはホストのIPを置き換える名前です。 したがって、結局のところ、サーバーまたはマシンを識別する名前になります...さらに、TLD(トップレベルドメイン)が含まれています。この場合は.esであり、スペインのWebサイトであることを識別します。スウェーデンの.se、会社の.com、.orgOrganizationなどです。
  • /info/home.html#web:これは、このコンテンツがアクセスされたこと、つまり情報ディレクトリであり、その中にハイパーテキスト、具体的にはセクションを含むhome.htmlファイルがあることを定義するだけです。 ウェブ。 画像、PDF、ビデオなどの場合もあります。 ローカルハードドライブのパスに移動すると、ファイルマネージャで発生しますよね?

これで十分だと思います 明確な操作 簡単な方法で説明しました。

チュートリアル:独自のWebサーバーを段階的に構築する

ApacheテストWeb

お持ちの場合 GNU / Linuxディストリビューション任意ネットワークを適切に構成すると、動的IPを使用できないため、静的である必要があります。そうしないと、値が変更され、Webへのアクセスがより困難になります。 さらに、iptablesまたはその他のソフトウェアで構成されたファイアウォールがあり、AppArmorまたはSELinuxがある場合のように、ポート80または8080などを介した転送を制限するルールがない場合にも注意する必要があります。 act。Webサーバーデーモン、この場合はApache。

次のステップは、ソフトウェアをインストールしてWebサーバーを実装することです。この場合は LAMPを完成させるためのApacheおよびその他の追加パッケージ、しかしそれは別の可能性があります。 私の場合、Debianから:

sudo apt-get update

sudo apt-get install apache2
sudo service apache2 restart
sudo apt-get install mysql-server php5-mysql
mysql -u root
mysql -u root -p (sin no introdujiste el password durante la instalación)
sudo apt-get install php libapache2-mod-php5 php5-mycrypt
sudo apt-get install php5-sqlite

その後、あなたはすることができます いくつかのパラメータを設定します 必要な場合、または機能せず、前の画像で示したページが表示された場合は、サーバーから何か問題が発生したためにログを確認してください...ちなみに、これを確認できますWebブラウザーにアクセスし、アドレスバーまたはサーバー用に構成した静的IPでlocalhost 127.0.0.1を設定してページを表示します。 デフォルトのポートは、変更する場合に備えて/etc/apache2/ports.confにあります。

必要に応じて、他のインストールも可能です 追加パッケージ、メールサーバー、またはphpAdminなどの構成パネルも計画している場合。

サーバーでWebサイトをホストする

ウェブサイトの構築

サーバーの準備ができたら、サーバー専用のPCを常にオンにしてネットワークに接続し、他のデバイスからWebにアクセスできるようにする必要があります。そうしないと、サーバーが「ダウン」します。 今は 私たちのウェブサイトをホストする、HTMLやその他のコードを使用して自分で作成したり、WordPressのようなCMSを使用したりすることで、作業がはるかに簡単になり、同じ場所でホストできるようになります...

そしてこれのために私達はそれをします / var / www / html /ディレクトリ Apacheの構成を変更しない限り、Webがホストされている場所になります。 たとえば、次のコンテンツを含むお気に入りのテキストエディタでファイルを作成することにより、PHPを使用して簡単なテストを行うことができます。

<?php phpinfo() ?>

あれを呼べ test.php これで、apache2デーモンを再起動した後、ブラウザーからアクセスできるかどうかを確認できます:127.0.0.1 /test.php。

このチュートリアルがお役に立てば幸いです。少なくともサーバーの動作を少しよく理解して、ブログにアクセスしてニュースアイテムを読むたびに、その背後にあるすべてを理解できるようにしてください。 あなたを残すことを忘れないでください 注釈、疑問、または提案、..。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ペドロ

    こんにちは。 5年にPHP2018を使用しても、あまり意味がないと思いませんか?

  2.   ノエ台北

    ねえ。
    サーバーに関しては、私は初心者です。
    ルーターにはどのIPが必要ですか?
    サーバーとして機能するPCにはどのIPが必要ですか
    ApacheにはどのIPが必要ですか?
    パブリック固定IPですか?

  3.   ジュカポポ

    NoeTaipeに強く同意する
    Linux Webサーバーをセットアップするための情報を探すのに数週間を費やしましたが、すべてのフォーラムで、内部ネットワークまたはローカルネットワークでのみ機能する「トリック」を配置しました。あなたの目標はWebサーバーをセットアップできるようにすることだと思います。そして、誰かがあなたのネットワークの外にある別の都市、国、...
    Webサーバーに外部ネットワークでそれを認識させることができました。つまり、パブリックIPを配置し、モデムルーターのポートを開くだけで、Bind9をインストールして、内部ネットワークで発明されたドメインを指定できるようになりました。それは私のネットワークで正しく動作するが、インターネットを介して同じことを行う方法に関する情報を見つけることができず、人々は私のIPを置くのではなく、発明されたドメイン、グーグル、国、世界、英国の裁判所、…。
    ご挨拶と私はあなたがそれについての情報を見つけることを願っています。

  4.   Logitechno1

    サーバーのセットアップ方法も学ぼうとしていますが、興味のあるのはサーバーを本番用にセットアップする方法であり、それでも適切な情報を見つけることができません。
    まだ問題を解決していない場合は、noip.comでアカウントを作成することをお勧めします。 無料のドメインを作成し、パブリックIPを配置して、モデムにDDNSを構成します。 私はあなたにリンクを残します: https://www.youtube.com/watch?v=6ijBQhn06CA
    ご挨拶。

  5.   グスタボIP

    貢献してくれてありがとう、私はLEMPサーバーをインストールしました、そしてあなたのブログのおかげで私はすでに私のWEBページを実装する方法のアイデアを持っています、今少しPHPまたはHTMLのどちらか簡単で先を学びます。
    ご挨拶。

  6.   ファビアンアリエルウルフ

    あなたの冒頭の言葉を考えて、あなたが私のような経験の浅い人々のために段階的なチュートリアルをするだろうと想像してください…私は間違っていました。

  7.   ディエゴ・ラモス

    それは私に十分に役立ちました、どうもありがとうございました。

  8.   ミゲルエンジェルシルバ

    このチュートリアルは良い悪い...