記事投稿日: 2014年2月25日
【最終更新: 2017年02月16日】
就職や起業をきっかけに、 はじめて「商用」としての
レンタルサーバを契約される場合、
どういったことに気をつければ、大きな失敗をしないで済むか、
安心して運用していけるか、という点についてまとめてみました。
※レンタルサーバの他に、現在では、Saas というジャンルで、
AWS や、Google Cloud Platform、Heroku といった
サーバの機能を提供するサービスもありますが、
高度な知識が必要とされるため、ここではそれらをとりあげません。
サーバや、プログラムといったものにあまり詳しくない人、
本当の「初心者」に向けて、できるだけ分かりやすく解説してみたものです。
ホームページを持てば、日本中、世界中の人に知られる可能性が広がっていくものの、
同時に悪意のある者の目にもさらされることは避けようがありません。
ここ4、5年の間だけでも、実際に以下のような問題に直面したり、
被害を体験したり、耳にしています。
①メールサーバが不特定多数の送信を許していた
(知らないうちに迷惑メール業者に利用されていた)
②自動インストールのサービスで設置したブログに脆弱性があり、設定を書き換えられた
③サーバの管理会社のミスでサーバのデータがすべて削除された。
上記で取り上げた問題は、サーバの運営の根幹に関わっているため、
管理者の権限のないレンタルサーバの場合だと、どれだけ意識しても
防ぎようのない面があります。
しかし、利用者が意識していれば、あらかじめ問題がおきないようにしたり、
問題が起きた時に、あわてずに対応することができるようになります。
実際にデータ消失問題が起こった時のことです。
バックアップをもっているサイトは 1両日中に復帰しました。
持っていないサイトは、何週間もサイトが白いままでした。
訴訟を起こして保証金を受けられたとしても、実際問題として、
失ったデータは帰ってきません。
もちろん、サイトの復旧までに、失われたものを取り戻すことも困難です。
サイトを運営するとき、万が一の時のこと、「バックアップ」のことを考えていたか。
その意識のあるなしだけで、その後の対処の仕方が変わってきます。
「データの消失」
「データの流出」
「脆弱性をついた不正な利用」
レンタルサーバでは、このような危険にさらされることを
念頭において置く必要があります。
そこで初心者の方にもできるだけ分かりやすく、
ポイントをしぼってサイトを選び、安心して運用していくための
ポイントをまとめてみました。
一人でも多くのサイト管理者の方が被害に遭うことなく、
すばらしいサイトを運用されることを願います。
単純に、セキュリティが高いサーバを選べばいい、というものではありません。
まず、はっきり決めていただきたいのは、
次にとりあげる「目的」と「予算」です。
まず、サーバの「目的」を決めます。
ウェブアプリを作成して公開したいのか、
ECサイトで商品を販売したいのか、
人気ブロガーとなって社会に貢献したいのか。
あるいは、ただ会社やお店のサイトを作って宣伝だけしたいのか。
使う機会のない高機能を持つサーバを選ぶより、
目的に沿ったサーバを選ぶためにも、目的はしっかり決めましょう。
もし、会社やお店のサイトを作りたいだけで、
お問い合わせフォームなどのプログラムはいらない、というのであれば
非常にセキュリティの高いサイトが生まれます。
プログラムでユーザの入力を受け付けないサイトほど
強固なサイトはないからです。
そして、データとしては、「発信」するだけであれば、
「静的」とよばれるファイルを設置するだけなので、
データベースも不要です。非常に安価に作成できます。
宣伝だけで、お問い合わせを受け付ける暇がなければ、
いっそのこと、一切のプログラムが動かない、
ファイルを設置するだけのサーバを選択にしましょう。
そうすれば、外部から異常なプログラムが送りつけられても
動く環境ではないので、何も心配する必要はありません。
高機能なサイトほど、考えなければならないことは増えるのです。
「目的」を最初に決めることが一番大事なのはこうした理由です。
次に、予算は無限ではないので、こちらも上限を決めておきます。
現在の収入から余剰分としてあてるのか、
サーバを運営することで得られる売上をあてる予定なのか。
運営費がキャッシュフローを悪化させる原因にならないよう、
予算を捻出しましょう。
たくさんのしたいことがあっても、予算により、できることは限られてきます。
しかし、できることが限られているなら、外部のサービスを利用するなど
考えられることもあります。
自分の予算で選択できるサイト(サービス)なのかをはっきりさせるためにも
予算を決めておきましょう。
「データの流出」
不特定多数の利用者のいるサイトでは、これが一番怖いことです。
二番目は「脆弱性をついた不正な利用」、
三番目は「データの消失」ではないでしょうか。
できるだけ、安全なプログラムを選択しましょう。
これは、自分で判断できない限りは、導入しない、というのがベストな選択です。
プログラムの専門家に聞くのが最も近道です。
データの流出や、消失、不正な利用が起こったあと、
問題になってくるのは、「問題が起こる以前の状態に戻せるか」ということ、
「バックアップ」ができているかということです。
月額1,000円未満のレンタルサーバでは、一般のユーザが
考えているようなバックアップ機能は実装されていない、と考えた方が良いでしょう。
エックスサーバー(月1,000円のプランから)は、このサイトでも利用しているおすすめのサイトです。
管理画面からボタンをクリックするだけで、
サーバ上のファイルを一括してダウンロードできる機能があります。
が、数千円のプランでも、このような機能を持っていないことがあります。
予算との兼ね合いになりますが、
バックアップは手動か、それとも自動で行うのか。
運営方法をきちんと決めておきましょう。
また、サーバとデータベースは、別々にバックアップをとる必要があります。
たとえば顧客情報をデータベースに保存しているのに、
ウェブサーバの(ファイルだけの)バックアップだけで満足していないよう、
それぞれ運営方法を確認しておきます。
バックアップサービスは、インターネットが普及してからの今日まで、
さまざまな問題が起こってきた歴史があるため、現在では
安価なレンタルサーバでも、オプションサービスとして採用しているところもあります。
サーバは安いが、バックアップが割高で複雑なため、
運営が大変、といったことにならないよう、サービスの内容には充分気をつけましょう。
ブログ、ECサイト、Wiki、CMSなど、利用するのは
やさしくても、導入するのにはプログラムとサーバの知識が
必要なサービスは多々あります。
プログラマを雇うお金もない。
その手間や予算の問題を無くしてくれるのが
「自動インストールサービス」です。
有名どころでは、ブログをはじめられる「WordPress」、
ECサイトの「EC-CUBE」です。
ただし、自動インストールで設置したプログラムが脆弱性を
抱えていると、不正アクセスを許してしまうことがあります、
設置は自動で行うが、確認は必要だということだと思います。
レンタルサーバで自動インストールができるプログラムのほとんどは、
アップデートの機能を備えているものなので、運営する人間が日々
気をつけて実行していれば、問題にはなりにくい体制になっています。
自動インストールの対象となっているプログラムは
人気のあるものばかりですので、設置に関する注意点は、探せば見つかります。
念をいれるなら、自分でチェックするか、詳しい人に頼む必要があるでしょう。
レンタルサーバは、ひとつのサーバを何人もの契約者が利用しているため、
共有マンションのような状態になっています。
そのため、サーバに負荷をかけるような利用をすると、
マンションでいうところの、近所迷惑をかけることになります。
たとえば負荷の高いゲーム、大きな動画のストリーミング配信といった利用です。
負荷が大きい場合、他の契約者が運用しているサイトが重くなったり、
最悪の場合、表示されなくなるといった影響が出てきます。
※反対に、「専用サーバ」というものがあります。
他の利用者と共用する部分がないため、問題が起こりにくく、
自分で好きな機能を盛り込めるという特徴があります。
共用サーバ全体の能力の低下という事態を避けるため、
共用のレンタルサーバでは、「転送量」を
決めているところがほとんどです。
決められた転送量を超えた場合は、超えた量に応じて課金されたり、
一定期間、使用を止められたりします。
それほど、転送量というのは、気を配らなければならないものです。
ですが、個人や中小企業の会社紹介のサイト程度では、
アクセスがそれほど集中することは考えにくいので、
どれくらいの負荷がかかればサイトが表示されなくなるのか、を
把握していればよいかと思います。
ウェブサービスを立ち上げて、不特定多数の人へ
情報を公開する場合は、データのバックアップと同じくらい、
転送量に気をつけなければなりません。
1ページあたり 30KB として、3000人が見た場合、
転送量は 90MB になります。
会社のホームページで10ページあり、、
3000人がすべてのページを見た場合は1日900MBとなります。
月100円や、無料のレンタルサーバでは、
1日の転送量を1GB(1000MB)と低く設定しているところもあります。
上記の例で言うと、3000人を超えた場合、課金や
サイト停止のリスクを負うことになります。
アクセス解析をしたことのある人なら見当がつくでしょうが、
中小企業のサイトにアクセスするのは、1日100人もいません。
したがって、上記にあげた低予算のサーバであっても、
転送量というのは、元々充分に確保されているものなのです。
最近のレンタルサーバは容量が巨大化し、
複数のサイトを運営できる「マルチドメイン」に対応したサービスが
増えていますが、転送量を考えると、たとえ運営できるサイトが
「無制限」であっても、リスクがあることが分かります。
1日のページビューが1万を超えなければ、人気のある
「アルファブロガー」とは言えないそうです。
たとえば、3万人がみるブログを作るぞ、と意気込んでも、
上記の例で言うと、そのために必要な転送量が1日9GBになります。
レンタルサーバで複数の顧客サイトを管理している中小業者、
個人事業者は転送量に注意しなければなりません。
ここで、最初に決めた「目的」を確認します。
アクセスされるユーザ数を想定することも重要です。
1日1GBであっても、中小企業の会社のホームページレベルなら
十分かもしれません。
アフィリエイトサイトを複数運営するなら、
どれだけのアクセス数が増えるとパンクするのか、
最初からサイトの数と将来のアクセス数を見込んでおく必要があります。
1,000円以下のレンタルサーバでは、1日10~50GBと運営会社によってかなり
幅広くなっています。また、転送量はあまり表立って紹介されることのない
情報ですので、見逃さないよう注意が必要です。
<参考資料>
ロリポップ!チカッパプラン(月額500円)は1日10GB。
エックスサーバー(月額1000円)は1日50GB。
サイトの「目的」と、想定される「転送量」が決まったあとで、
容量のプランを選びます。
使用量は大きい方がいいと言って、ここから決めると、将来の運営で
痛い目をみるというのは、ここまで読まれた方にはお分かりだと思います。
容量も、目的にそって自然に決まっていくと思います。
複雑なプログラムを必要とせず、ページ数も少ない広報サイトなら
数百MBでも問題になりません。
情報を伝えるだけで、動きのない「静的」なページと違い、
お問い合わせフォームや、データベースの管理、
ゲームや動画の配信を行いたいのであれば、
「プログラム」を作らなければなりません。
一般的なレンタルサーバでは、「サーバサイドスクリプト」という
カテゴリに分類されるプログラムを用意しています。
※レンタルサーバの中で動くので、「サーバサイド」といいます。
種類はさまざまですが、レンタルサーバのプログラムとして
今や定番となっているのは「PHP」です。
一昔前は、Perl が人気があったのですが、
最近では目立たなくなりました。
ですが、何でも出来るということで、使い続けている人もいますし、
Perl もまた、PHP と並んで古くからレンタルサーバで使える
サーバサイドスクリプトの仲間です。
大学などの研究機関や、学生の間で人気があるのが
Ruby や Python です。
それぞれ、特徴があり、メリットもあればデメリットもあります。
独学で学んでいく場合の習得のしやすさなどもふまえて、
選択する必要があります。
ただし、Ruby や Python はまだ使えるレンタルサーバが少ないのが現状です。
Ruby は使えても、人気の高い Ruby のフレームワーク「Ruby on Rails」が
使えないというサーバも多いので要注意です。
賛否両論ありますが、筆者のおすすめは PHP です。
とにかく参考文献が多いので、検索すれば何とか解決できることが
多いですし、WordPressや、EC-CUBE、Drupal といった
人気のあるプログラムは、ほとんどPHPで作られています。
習得が早く、迷うことが少ないという点では、
Ruby がおすすめですが、技術者はまだまだ少ないため、
外注してプログラムを作ったりする場合、必要な時に
人手が見つからないことがあるかも知れません。
が、優秀な言語で、特にフレームワークの
Ruby on Rails は強力です。
楽天市場も Ruby で動いているそうです。
レンタルサーバではないのですが、「Heroku」というサービスでは
Rails が使えることで有名です。
すべて英語の管理画面ですが、英語に苦手意識がなく、
興味があればのぞいてみるのもいいと思います。
実際、Heroku から始まったサービスもあります。
サーバの容量と使用するプログラムが決まり、
たくさんのデータを扱うということであれば、データベースを選択します。
レンタルサーバでは、MySQL(MariaDB) が主流で、PostgreSQL も人気があります。
PHP、Ruby、Python、いずれも上記のデータベースを扱えます。
データベースのコマンドは、基本的にはそれぞれ違いはないのですが、
使えるコマンドが微妙に異なることはよくあります。
MySQL が使える技術者だから、PostgreSQL でも大丈夫だろう、と
安易に考えてはいけません。
また、実際の開発現場では、プログラマのほかに、
「データベースのスペシャリスト」が必要とされるほど、
データベースというのは奥の深い分野です。
プログラムが出来る人でも、データベースはあまり…という人は少なくないのです。
プログラムの違いが、英語や日本語といった「言語の違い」に似ているとしたら、
プログラムとデータベースは魚屋さんか、パン屋さんかといった「カテゴリ」の違いです。
全然別の知識が必要です。
運営やパフォーマンスまで考えて作らなければならないので、
技術者のレベルもピンからキリまであるのです。
選び方をいくつかご紹介しましたが、
おそらくほとんどの初心者の方は、
サーバの能力、スペック面から検討してしまっていたと思います。
運営に大事なのは、ひとつひとつのサービスの目的を把握して、
それに見合った環境を手に入れ、整えていくことです。
ですので、目的、コスト、などから考えた方が、
実際は近道なのです。
会社の担当者としても、そこから上司の「誤解」をとき、
理解を得ていく必要があるでしょう。
もしひとつのレンタルサーバ会社が他に比べるものもなく
優秀だとしたら、世の中にこれほど多くのレンタルサーバの
会社は出てこなかったしょう。
それぞれのサービスに特色があるので、これだけ多くのサービスが
必要とされ続けているということです。
予算の都合で自動バックアップ機能が契約できなくても、
しっかりとして運営方法を確立できるなら、手動でも安心を
得ることはできます。
この記事がみなさんの選択の一助となりましたら幸いです。
コメントを残す