LoginSignup
4
4

More than 5 years have passed since last update.

速くなった(らしい)さくらのサーバーにlaravelプロジェクトを移転した

Posted at

動機

ずっとさくらのレンタルサーバーを使ってきたのだが、最近
「速くなったからぜひ新しく登録し直して移転してね!初期費用と1ヶ月分のクーポンつけるから!」
とメールが来たのでごちゃごちゃしてたサーバーの整理を兼ねて移転してみることにした。

もくじ

  1. 登録
  2. 前準備
  3. 移転
  4. 移転後作業

1.登録

スタンダードプラン

https://www.sakura.ne.jp/standard.html
上記ページの「2週間無料で始める」より
- 初期ドメイン
- 支払い方法
を入力して登録

2.前準備

仮登録完了メールを確認

登録してしばらくすると「仮登録完了のお知らせ」というメールが来るので確認
ここに初期パスワードやFTP、メール関連の情報が載っているので大切に扱う

パスワードの変更

初期パスワードのままだとメールが盗まれた場合に非常にまずい事態となるのでまずはじめに変更する
サーバコントロールパネル
にログインして左メニュー「サーバパスワード変更」から変更する

ssh作業

ここからターミナルを使用する
macの場合は[ターミナル]
windowsの場合は「git for windows」をインストールした際についてくる[git bash]が便利

SSHログイン

$ ssh (初期ドメイン名)@(初期ドメイン名).sakura.ne.jp

パスワードを聞かれるので入力してログイン

シェルをbashに変更

(参考:http://blog.orepedia.com/entry/2015/12/06/000000)
ログインして

Welcome to FreeBSD!
%

ならば

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

を叩いてパスワードを入力
続いて.bash_profileと.bashrcを作成

touch .bash_profile
touch .bashrc

.bash_profileの編集

vi .bash_prifile
.bash_profile
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

今のところ.bashrcがあれば読み込んでねっていう指示のみ
再ログインし直して

Welcome to FreeBSD!
[hoge@www3333 ~]$

のようになっていれば成功

php、gitバージョン確認

php --version

2018年8月13日現在でデフォルトが7.2.*が入っている

git --version

これも2.7.0が入っている

binディレクトリ作成

さくらのレンタルサーバーでは$home/binにあらかじめパスが通っているがディレクトリは無いので作成する

mkdir /bin

composerインストール

(参考:https://c-rtx.com/2015/09/22/laravel-on-sakura-rental-server/)

$ curl -sS https://getcomposer.org/installer | php -- --install-dir=bin --filename=composer
$ chmod 755 bin/composer
$ composer

と打ってヘルプが出てくれば成功

DB作成

[サーバコントロールパネル] - [データベースの設定] - [データベースの新規作成]
よりDBを作成

メールアカウント作成

[サーバコントロールパネル] - [メールアドレスの管理] - [メールアドレスの追加]
よりメールアドレスを追加

3.移転

wwwディレクトリ以下の移転

さくらのサーバは ~/www 以下がルートディレクトリになっているが、
今回は ~/(プロジェクト名) にプロジェクトを配置し、
~/www 以下にシンボリックリンクを設置する方法を取る。

~/www 以下にリンクの他に静的サイトを設置していたの場合は
FileZilla等を使って旧サーバから新サーバに移転

laravelプロジェクト移転

プロジェクトをclone

プロジェクトはBitbucket上のリポジトリにpushしている前提で話を進める。
~/(プロジェクト名)にプロジェクトをcloneする

[hoge@www3333]$ mkdir ~/(プロジェクト名)
[hoge@www3333]$ cd ~/(プロジェクト名)
[hoge@www3333]$ git clone git clone https://(アカウント名)@bitbucket.org/(アカウント名)/(プロジェクト名).git

.env

[hoge@www3333 ~/(プロジェクト名)]$ cd (Bitbucketプロジェクト名)
[hoge@www3333 ~/(プロジェクト名)/(Bitbucketプロジェクト名)]$ cp .env.example .env
.env
APP_NAME=(アプリ名)
APP_ENV=production  ←本番環境の場合
APP_KEY=
APP_DEBUG=false
APP_LOG=daily  ←お好みで
APP_LOG_LEVEL=error  ←お好みで
APP_URL=(アプリURL)

DB_CONNECTION=mysql
DB_HOST=(データベースサーバ)
DB_PORT=3306
DB_DATABASE=(データベース名)
DB_USERNAME=(アカウント名)
DB_PASSWORD=(データベースパスワード)

laravelインストール

[hoge@www3333 ~/(プロジェクト名)/(Bitbucketプロジェクト名)]$ composer install
[hoge@www3333 ~/(略)]$ php artisan key:generate
[hoge@www3333 ~/(略)]$ php artisan config:cache  ←適宜

DB設定

[hoge@www3333 ~/(略)]$ php artisan migrate

旧サーバのコントロールパネル
→データベースの設定
→管理ツールログイン
→左のツリーからデータベース選択
→エクスポート
→sqlファイル保存

単純にレコードのみ挿入するファイルにする

hoge.sql
*テーブル「migrate」と「password_resets」に関する行を削除
*CREATE TABLEから始まる行をすべて削除(laravelmigrateですでにやっているので)
*各テーブルへのINSERT文のみ残しそれより下の設定に関する行も削除(同上)

新サーバのコントロールパネル
→データベースの設定
→管理ツールログイン
→左のツリーからデータベース選択
→インポート
→編集したsqlファイルを選択
→実行

link設定

ターミナルで新サーバにsshログイン

ln -s ~/www/(プロジェクト名等※1) ~/(プロジェクト名)/(Bitbucketプロジェクト名)/public

動作確認

404出たりした場合は public/.htaccess あたりを疑うべし

独自ドメイン登録変更

旧サーバ―から削除

コントロールパネル
→ドメイン/SSL設定

(SSLを設定している場合)
→証明書欄の「更新」
→証明書作成の中止
→画面に従って完全に削除

→ドメイン名の一番右「削除」
→削除

新サーバーに登録

コントロールパネル
→ドメイン/SSL設定
→新しいドメインの追加
→画面に従って追加してください

(SSLを追加する場合)
→証明書欄の「登録」
→画面に従って登録してください

4.移転後作業

旧サーバーの削除

ファイル・DB・メールすべて移転orバックアップが完了したら旧サーバの登録を解除しましょう

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4