SSHログイン
- さくらのSSH接続はパスワードで行う (公式マニュアル参照)
ユーザー名 | アカウント名 |
ホスト名 | 初期ドメイン |
パス | サーバーパスワード |
- 初期ドメインとアカウント名は、コントロールパネル右上で確認可能
- SSH接続してみる
例えば初期ドメインが
example.sakura.ne.jp の場合
ターミナルでは下記形式で接続可能
$ ssh example@example.sakura.ne.jp
ここでパスワードを聞かれるので、
サーバーパスワード (コントロールパネルにログインするときのパスワード) を入れるとOK
composerをいれる
- SSHでログイン後、下記コマンドで
composer
をいれる
$ cd ~
$ mkdir bin
$ curl -sS https://getcomposer.org/installer | php
$ mv composer.phar bin/composer
$ rehash
$ composer -V
Composer version 2.4.4 2022-10-27 14:39:29
あとはLaravel直下に移動してcomposer i
してあげる
ターミナルのPHPバージョンを変える
- PHPは/usr/local/php/{バージョン}/bin/php-cgiにいるので、
そこを直叩きしてあげる
$ /usr/local/php/8.0/bin/php-cgi -v
PHP 8.0.25 (cgi-fcgi) (built: Nov 8 2022 13:31:07)
Copyright (c) The PHP Group
Zend Engine v4.0.25, Copyright (c) Zend Technologies
with Zend OPcache v8.0.25, Copyright (c), by Zend Technologies
$ /usr/local/php/8.0/bin/php-cgi artisan migrate
データベースを作成・設定する
- 「Webサイト/データ」>「データベース」の「新規追加」からデータベースを登録する
- 一番最初のデータベース作成の場合は、ユーザーパスワードも設定する
※パスワードは後で確認できないので必ず控えておくこと - 登録後の一覧からDB情報を確認する
- .env
DB_CONNECTION=mysql
DB_HOST=mysql57.XXX.sakura.ne.jp # データベースサーバー
DB_PORT= 3306
DB_DATABASE=XXXX # 追加したデータベース名
DB_USERNAME=XXXX # ユーザー名
DB_PASSWORD=XXXX # ユーザーのパスワード
メール送信に使用するSMTP情報を確認する
- 「メール」>「メール一覧」の「新規追加」タブを押下してアカウントを追加する
※パスワードは後で確認できないので必ず控えておくこと
- .env
MAIL_MAILER=smtp
MAIL_HOST={アカウント}.sakura.ne.jp # 初期ドメイン
MAIL_PORT=587
MAIL_USERNAME={追加したユーザー名}@{ドメイン}
MAIL_PASSWORD={設定したパスワード}
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS={追加したユーザー名}@{ドメイン}
MAIL_FROM_NAME="送信元名"
LaravelのURLからpublicをなくす
- プロジェクト直下に.htaccessを新規作成
Laravel8までの場合
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
# Options -MultiViews
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php
</IfModule>
Laravel9以降の場合
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
- 既存のpublic/.htaccessを編集
<IfModule mod_rewrite.c>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
さくらサーバーでLaravelを構築したときに色々入れたのでざっくりメモ