ラズパイでWebサーバーを作りたいけどApacheとNginxどっちを使ったら良いかわからない…
そんな悩みにお答えします。
ラズパイを持っている方の多くが一度はwebサーバー構築にチャレンジしたことがあるのではないでしょうか。
Apache、Nginxにはそれぞれの良さがあり、迷いがちです。
今回はラズパイで使うという視点で比較・解説します。
はじめに
最初に結論を言ってしまうと、
「本当に迷ってる方はとりあえずApache選んでください。」
「ある程度知識と経験がある方はNginx選んでみてください。」
ぜひ最後までご覧ください。
Apache
こちらのサイトを参考にさせていただきました。
特徴
Apache(アパッチ)は、世界的に使用されているWebサーバーの一つです。
特徴は以下の通りです。
- オープンソースなので無料で使える
- ほとんどのOSで動作する
- 設定が初心者にも優しい
- 1995年生まれ → 古い!
20年以上もの間、広く使われているのでとても安定していて、根強い人気があります。
ちなみにこのサイトもApacheです。
メリットとデメリット
メリット
- 無料で使える
- Nginxでは必要なphpの設定が不要
- rewriteが使える
- 歴史があり、利用ユーザーも多い分、情報も多い
php、rewriteについてはここでは説明しませんが、Nginxと比べて設定が簡単ということです。
初心者の方にはおすすめです。
NginxにはないVirtualHostというとっても便利な仕様もあるので、気になった方は知れべてみてください。
デメリット
- Nginxほどの高速化は図れない
- カスタマイズ性能ではNginxに劣る
NginxはApacheと比べて複数のデータを処理する性能がとても高いです。
Webサイトのアクセスが増えてくると、その弱点が目立つかもしれません。
結論
こんな方におすすめです。
- とりあえずWebサーバーを立ててみたい
- 手軽に自宅サーバーを立てたい
- 色々遊んでみながらサーバーについて学びたい
初心者の方、特にこだわりがない方、小規模なサーバーを立てたい方にはおすすめです。
Apacheの設定についてはこちらの記事で解説しています。
Nginx
特徴
Nginx(エンジンエックス)も、同じく世界的に使用されているWebサーバーの一つです。
特徴は以下の通りです。
- オープンソースなので無料で使える
- 大量の処理に強い
- メモリ使用量が少ない
- さらなる高速化が可能
Nginxといえば「処理の速さ」です。
そしてキャッシュなどの設定を行うことでさらに高速化できることも魅力の一つです。
メリットとデメリット
メリット
- 無料で使える
- 速い!
- 負荷に強い(メモリ使用量が少ない)
- 高速化できる
- カスタマイズ性が高い
速い のは言うまでもないです。
サーバーをカスタマイズして高速化させるのは結構楽しいので、ある程度慣れてる方にはオススメです。
デメリット
- 設定が初心者には難しい箇所がある
- phpを使うための設定が面倒
カスタマイズ性能が高い分、設定が難しいという点があります。
特にphpの設定は意外とつまづく方が多いようです。(私も一度ハマりました)
結論
こんな方におすすめです。
- サーバーを高速化したい
- サーバーやLinuxの操作に慣れた
- 設定をいじって遊んでみたい
Webサーバーを実際に公開して客を集めたい、なんて方にも良いかも知れません。
今までApacheを使っていて、ある程度設定ファイルの編集に慣れたという方は、Nginxに以降するのもオススメです。
結局どっちがいいの?
Apache | Nginx | |
初心者 | ◎ | △ |
中級者 | ◎ | ◎ |
処理性能・速さ | ○ | ◎ |
カスタマイズ性能 | ○ | ◎ |
自宅サーバー | ◎ | ○ |
php | ◎ | ○ |
これを見てもいまいちピンと来ない…
これでも迷っている方は、
初心者ならApache!
ある程度知識や経験があるならNginx!
それでも迷う方はとりあえずApache!
い、以上です。
質問等あればコメントまでお願いします。
コメント