A Web Developer

さくらのレンタルサーバーでLaravelを使った思い出。

昨年にLaravelでメールフォームを作成する案件に携わりました。その際に学んだ事を記事に落とし込みます。

Category: Infrastructure
Tags: tyamahori Laravel
Date: 2019-01-29 02:01:45


環境

以下のような条件で、作成しました。

 項目  サービスなど 備考
サーバー さくらのレンタールサーバ リンク
言語 PHP7.2 リンク
フレームワーク Laravel5.7 リンク
デプロイツール Deployer リンク
メール配信 SendGrid リンク

さくらのレンタールサーバ

ポイント

  1. Nodejsを使いたいならまず使わない
  2. さくらのネームサーバは使わない
  3. 最低限のカスタマイズはする
  4. 良くも悪くも縛りがあることを理解する

Nodejsを使いたいならまず使わない

Gulpやnpmとか使えたら便利じゃないですか。。導入は無理そうなので諦めましょう。。そういう人はVPSなどを使用してください。自分もググって調べて挑戦しましたが、結局はうまく行きませんでした。

さくらのネームサーバは使わない

さくらのレンタルサーバの手順を調べると、ネームサーバを設定する手順があるじゃないですか。。それをやってしまうと後々沼にハマります。よっぽどのことが無い限り、ドメイン会社などのものを利用してください。さくらのものは縛りがあるためです。今回はSendGridを利用し、DNSレコードを編集する作業があったのですが、その設定が反映されませんでした。

最低限のカスタマイズはする

さくらのレンタルサーバのOSってFreeBSDじゃないですか。。しかも初期設定とか癖があるじゃないですか。。最低限使いやすいようにするための設定手順をまとめます。

ログインシェルをbashへ

% chsh -s /usr/local/bin/bash

Composerを導入

$ cd //ホームディレクトリ移動するためのコマンド
$ mkdir -p usr/local/bin/
$ curl -sS https://getcomposer.org/installer | php -- --install-dir=usr/local/bin/

vimの設定を調整

$ cd
$ vim .vimrc

# 以下を記載
set backspace=indent,eol,start
syntax on

.bash_profileを編集

$ cd
$ vim .bash_profile

if [ -f $HOME/.bashrc ]; then
source $HOME/.bashrc
fi

# composerの設定
PATH=$PATH:$HOME/usr/local/bin
alias      php='php -c~/www/php.ini'
alias composer='php -c~/www/php.ini ~/usr/local/bin/composer.phar'

$ source .bash_profile

Gitを導入

デフォルトでGitは入っているものの、いろいろと不都合が起きてしまうため、ソースからインストールをする

$ cd
$ mkdir local
$ mkdir local/src
$ cd local/src
$ wget https://www.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz
$ tar -zxf git-2.9.5.tar.gz
$ cd git-2.9.5
$ gmake configure
$ ./configure --prefix=$HOME/bin
$ gmake all install

パスを通す

$ cd
$ vim .bashrc

# 追加する
PATH=$HOME/local/bin:/home/XXXXX/bin/bin:$PATH

※ XXXXX はアカウント名です。

.htaccessを編集する

httpsを強制する際は以下のようにする。 ※設定でHTTPS設定を管理画面などからしてください。

RewriteCond %{ENV:HTTPS} !^on$
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

良くも悪くも縛りがあることを理解する

本当はレンタルサーバーではなく、VPSを使い、自分が思う通りの設定をするべきだと思いました。しかし今回は案件の規模上、レンタルサーバーを使用することになりました。教訓としてはやはり VPSで自分の思うように設定していくのが良い と考えました。