Laravelはレンタルサーバーでも使える?できない事もあるので詳しく話す。

更新日:

Laravelでレンタルサーバーは使える?できない事もある

laravelってレンタルサーバー上でも動くの?それとも自分でサーバーを別途用意しないと使えないの?

もし、あなたがlaravelを使ったサイト作りにチャレンジしてみようと考えている場合、Xサーバーやロリポップなどのレンタルサーバーでもちゃんと動くのか、インストールは簡単なのか、そういう心配がありますよね。

 

先に結論を言っちゃうと、「Laravelはレンタルサーバーでもバッチリ動く。でも後付けしたい機能がRoot権限が無いせいで動かせない事もたまにある」というのが答えです。

 

この事について、実際に自分がXサーバーにLaravelをインストールした時に起きた体験談なども織り交ぜて詳しく解説していきます。

 

Laravelは基本的にレンタルサーバーでOKだよ

LaravelはPHPで出来てます。そしてどこのレンタルサーバーでもPHPは動きます。

WordPressもPHPです。つまり、WordPressが動くサーバー、PHPが使えるサーバーであれば、基本Laravelも何の問題もなく使えます。

例えば、これは実際に私がLaravelでXサーバー上に作った外国人向けの日本語辞書サイトです。

こういったサイトや口コミサイトなどをLaravelを使って全く問題なくレンタルサーバー上に作る事ができます。

 

レンタルサーバーで使えるPHPのバージョンを確認しよう

PHPには、バージョンがあります。
レンタルサーバーによって使えるバージョンが違います。

Laravelにもバージョンがあり、例えば、Laravel6には、PHP7.2.0以上が必要です。

事前にレンタルサーバーのPHPがどのバージョンが使えるのかは、チェックしといた方がいいですね。「〇〇サーバー、PHPバージョン」のように検索すれば、出てきますよ。

 

レンタルサーバーだとLaravelで使えない機能が出てくる!?

LaravelはPHPですから、基本的にすべての機能が問題なくレンタルサーバーで動きます。

し・か・し!

ウェブサイトを作ってると、PHP以外の機能を後付けしたくなってくる事が多々あります。

 

例えば、先程紹介した、私がXサーバーに作った辞書サイト、
ある時、私は「漢字に自動的にふりがなを振る機能を付けたいな」と思いました。

↑こんなふうに。

 

で、調べていくと、PHPだけじゃ無理っぽい事が分かりました。

そこで使う事になったのが、PythonやPerlという別の言語です。

一応、多くのレンタルサーバーでも、PythonやPerlも動くようにはなってるんですが、
バージョンが限れられていたりして、思ったように動いてくれない事が多々あります。

 

そして、一番レンタルサーバーで問題なのは、「Root権限がない」って事です。

 

例えば、PythonやPerlにあなたが詳しくなくても、誰かが便利なプログラムをすでに作ってくれていて、サーバーにそれをインストールすれば、簡単に動かせるとします。

 

でも、多くのそういったプログラム(パッケージ)をレンタルサーバーにインストールするには
Root権限が必要なんです。

 

Windowsで何かソフトをインストールする時も、所有者権限がないとインストールできないものもありますよね。

レンタルサーバーのRoot権限は、レンタルサーバー会社が持っているものであり、勝手にユーザーにそこをいじくられると、下手したらサーバーが壊れてしまったり、セキュリティに問題が発生しますから、我々ユーザーにはRoot権限がありません。

でもRoot権限がないとインストールできないよってプログラムが多々あるので、それがレンタルサーバーでLaravelを使う時に問題になってくるわけです。

 

ちょっと待って。Laravel関連の便利なプログラムはレンタルサーバーでもインストールできるの?
Laravel関連、つまりPHPで作られたプログラム(パッケージ)はRoot権限がなくてもインストールできるんだ。Composerっていうソフトを使って簡単にインストールできるから、それは問題ないんだ。でもPerlやPythonなんかで作られたプログラムはRoot権限が大抵必要になってくるんだ。
Neby
僕は、PerlやらPythonだなんて全く使った事がないから、レンタルサーバーで問題なさそうだな。
自分もそう思ってたけど、「こんな機能があったら便利なのに」っていうのを後から作ろうとしたら、必要になってきちゃったんだ。
Neby

 

ただ、このRoot権限がないレンタルサーバーにもこれらの便利なプログラムをインストールする事は可能です。

例えば、Pythonという言語であれば、レンタルサーバーに擬似Python環境が作れるAnacondaやLinuxBrewなどを使う事で、Root権限なしでもプログラムをインストールして使う事も可能です。

実際に私もふりがなプログラムについては、Xサーバーに元から付いてるPythonやCGI機能だけで、なんとかXサーバー上で動かす事もできました。

 

だったら、大丈夫そうだね。
いや、それが、やっぱりちゃんとRoot権限使わないでインストールしたものって、思った通りに動いてくれなかったりもする。あと、そこまでの下準備が大変すぎて、すごく苦労したよ。
Neby

 

例えば、筆者の場合は、Mecabという辞書プログラムをXサーバーにRoot権限なしでインストールしたところ、なんとか動いてくれましたが、ユーザー辞書が動いてくれませんでした。

また、FFMpegというwav→mp3のように、動画や音声の形式を変換してくれるPerl/python系ソフトをXサーバーにインストールしましたが、こちらは自分のWindows上(XAMPP上)では正しく動いたにも関わらず、Xサーバー上では何をやっても動きませんでした。これもRoot権限がないのが理由です。

 

後々、Laravelをカスタマイズして便利にしていこうとした時に、レンタルサーバーだと動かないプログラムもあって、度々つまづくっていうのはあるんだ。
Neby
そういう場合は、どうすればいいの?

 

Laravelに付け加えたいプログラムがレンタルサーバーで動かない時はどうする?

どうしても使いたいプログラムがレンタルサーバーで使えない場合は、

  • Laravel含めて全部VPSで運用する
  • 動かないプログラムだけ、動くサーバーに移す
  • 諦めて他の方法を探す

この3つから選びます。

 

レンタルサーバーではなく、LaravelをVPSで運用する

このRoot権限込みで使えるサーバーというのがあって、それはVPS(Virtual Private Server)、仮想専用サーバーと呼ばれています。

さくらのVPS Conoha VPSなど、有名レンタルサーバーでもVPSを提供している所もあります。

もしくは、AWS(Amazon Web Service)というアマゾン社のサーバーでもVPSと同様にRoot権限ありのサーバーを提供してます。

 

なので、レンタルサーバーを使わずに、VPSを使ってLaravelを運用するというのも手なんです。

 

VPSを使うデメリットはないの?
例えば、レンタルサーバーってサーバーの管理は全部レンタルサーバー会社がやってくれるじゃん。ハッキング対策やサーバー障害の修復とか、サーバーのバックアップとか。

でもVPSはそうとは限らない。Rootをいじれるって事は、変なプログラムを入れたらWindowsやMacがおかしくなる事があるのと一緒で、サーバーがぶっ壊れる可能性もある。そういう時、自分で解決する必要があるんだ。ハッキングされても自己責任だしね。

Neby
なんか面倒くさいって事だね。
あと、一つ注意して欲しいのは、特にAmazonなんかは従量制、つまり使った分だけ支払う方式になってるんだ。
Neby
え、注意もなにもその方が絶対安上がりでいいじゃん!
そうとも言えないよ、例えば、手直ししたサイトを何度も何度もアップロードし直してたら、それだけどんどん課金されるし、突然DOS攻撃を受けたり、もしくはバズって大量のアクセスが来たら、とんでもない額をいきなり請求される事だってあり得るんだ。
Neby
ぐほっ!!それ、全然素人向けじゃないじゃん!
リスクをよく理解して使わないとVPSはダメ。そういう意味ではレンタルサーバーは料金一定だから本当に安心だよ。
Neby

 

動かないプログラムだけを、動くサーバーに移す

もしくは、まずはレンタルサーバーでLaravelサイトを作っていき、
レンタルサーバーでは動かないプログラムが出てきた場合は、
その動かないプログラムだけを、違うサーバーやVPSに移して使うっていう方法もありです。

 

例えば、先程、私の場合は、動画変換ソフトがXサーバーでは動かなかったという話をしました。

だったら変換ソフトだけ、VPSなどを小規模で借りて、そこで変換させて、レンタルサーバーにあるLaravelと連携させるって事も全然可能です。

 

ただ、動画変換なんていうとんでもない容量をやり取りしそうなプログラムをAWSのような従量課金に置くのは危険ですね。あっという間に高額になるでしょうから(汗)。置くなら、定額のところが良いでしょう。

逆にふりがな付与みたいな大した容量を食わないであろうプログラムなら、AWSの方が少額で達成できると言えます。

 

変な話、自分のPCを24時間稼働状態にできるなら、自分のPCをサーバー代わりにして、同じ事をする事も可能です。まぁ、容量不足でフリーズしそうですが。

 

そういう手もあるんだね。
でも、VPSとレンタルサーバー両方借りるなら、どっちか1つにした方が安上がりだよね。こういう時は基本料なしで従量課金のAWSはたしかにおすすめできるよ。レンタルサーバーとAWSの2刀流は自分も実はやってたりするよ。
Neby

 

諦めて他の方法を探す

で、最後はレンタルサーバーで動かないプログラムはあきらめるっていうのも手です。

実際、私も動かない機能はあきらめたり、Javascriptでどうにかできないか代替案を探したりして、レンタルサーバーで運用してます。

 

レンタルサーバーにLaravelのインストールって簡単なの?

レンタルサーバーへのLaravelのインストールは、正直初心者には結構大変です。

Laravelをレンタルサーバーにインストールのやり方3パターンを初心者向けに解説。

 

WordPressのように、最初からレンタルサーバーに入ってて、ボタン一つでポチッとなとはいかないんですよ。

少なくともターミナルソフト(コマンドプロンプトのようなソフト)で、コマンドを打ってインストールする必要があるのだけは確かです。あとGIT(GITHUB)も必要になってきます。

 

コマンドとかGITHUB!?とか超分かんないんだけど。吐きそう・・orz
自分もそうだったよ。ちゃんと初心者でも使いこなせるようにまた解説するからがんばろうぜ!
Neby

GITとGITHUBとは?全く分からない初心者向けに図入りでやさしく解説!

 

Laravelはレンタルサーバーでも使える?まとめ

Laravelはレンタルサーバーで十分。ちゃんと使えます。
PHP、HTML、Javascript、こういったウェブで動かす系は一通り動くんで大丈夫です。

唯一の問題は、Root権限がない事。

Root権限がないと動かないプログラムがどうしても必要になったら、AWSやVPSへのお引越しも視野に入れようって感じです。

 

もし、あなたがまだ全くレンタルサーバーすら借りてない状態なら、最初からVPSを借りちゃった方がストレスフリーでLaravelサイトを構築できます。Wordpressなどでレンタルサーバーを借りてるなら、そのままレンタルサーバーでまずは試してみるのもアリ。
Neby

 

ちなみに、VPSなら、Conoha VPSがLaravel初心者にも使いやすく、コストも低いです。

Conoha VPSは、管理画面から、Laravel環境をインストールしたり、LAMPやLEMPといったPHPとデータベースのセット環境を選ぶ事もできます。

Linux+nginx+MariaDB+PHPがセットのLEMPを入れておけば、ローカル環境と同じ感覚で使えて便利だよね。nginx使えるのも速くてイイしね!

あと、KUSANAGIっていうWordPressを超高速化する環境、実はLaravelにも高速表示環境としてLEMPの代わりに使えたりもする。KUSANAGI使って爆速Laravelなんて事もConohaなら可能。気が変わっても、一度消して、別の入れたり自由にできるから大丈夫。

Neby

 

Laravelサイトを公開するなら、Conoha VPSが時間課金(1時間1.7円)も使えるので、お試しで初めやすく、初期費用もないので、初心者でも簡単に使えていいですね。

ConoHa VPS公式サイト

 

 

写真で血圧記録

  • この記事を書いた人

Neby

本を毎日多読しつつ、資産運用、プログラミング、心理学、ネットビジネススキルを猛向上中。貧富の差が広がる5年後、10年後に安心生活を送るためのお金のリテラシー、スキル、資産を一緒に作っていきましょう。

-PHP Laravel入門