当ページのリンクには広告が含まれています。
信じられない。
ロリポップcakeコマンド使えないの?
ってことで、cakeコマンド使えないとかCakePHPで開発する意味あるの?ってレベルなので、XAMPPを使った開発環境とロリポップの本番環境を作ることにします。
まじあほ。
使えるようにして欲しいです。ロリポップ様。
後日問い合わせで判明しますが、ロリポップはcakeコマンド使えません。
【参考】SSHについて / サーバー・プログラム / マニュアル – ロリポップ!レンタルサーバー
現状確認
ロリポップで簡単なCakePHPは動いている。
ローカルだとDBさえ整えたらbakeコマンド使えて解決しないか?
開発中のファイル自体は開発サーバに上げたいし。
作業開始
まずぐぐる。
cakephp3 db ドメインで切り替え。
あんまりしっくりこないな。
ん?あ。
そっか。
そのための.envだw
.envを使えるようにする。
// if (!env('APP_NAME') && file_exists(CONFIG . '.env')) {
// $dotenv = new \josegonzalez\Dotenv\Loader([CONFIG . '.env']);
// $dotenv->parse()
// ->putenv()
// ->toEnv()
// ->toServer();
// }
if (!env('APP_NAME') && file_exists(CONFIG . '.env')) {
$dotenv = new \josegonzalez\Dotenv\Loader([CONFIG . '.env']);
$dotenv->parse()
->putenv()
->toEnv()
->toServer();
}
config\.env.default
をコピーして、config\.env
を作成。本番用の.env
と開発用の.env
はDBの設定が違うので注意。
export APP_NAME="__APP_NAME__"
export DEBUG="true"
export APP_ENCODING="UTF-8"
export APP_DEFAULT_LOCALE="en_US"
export APP_DEFAULT_TIMEZONE="UTC"
export SECURITY_SALT="__SALT__"
export DB_HOST="localhost"
export DB_USERNAME="root"
export DB_PASSWORD=""
export DB_DATABASE="test"
export APP_NAME="App"
export DEBUG="true"
export APP_ENCODING="UTF-8"
export APP_DEFAULT_LOCALE="ja_JP"
export APP_DEFAULT_TIMEZONE="Asia/Tokyo"
export SECURITY_SALT="ランダムの半角英数字を入れる"
export DB_HOST="localhost"
export DB_USERNAME="root"
export DB_PASSWORD=""
export DB_DATABASE="test"
export APP_NAME="375MEMO"
export DEBUG="true"
export APP_ENCODING="UTF-8"
export APP_DEFAULT_LOCALE="ja_JP"
export APP_DEFAULT_TIMEZONE="+09:00"
export SECURITY_SALT="ランダムの半角英数字を入れる"
無効ねえ…。
あちら立てればこちら立たず…w
ってことで、config\.env
では、Asia/Tokyo
を設定。config\app.php
では+09:00
を直打ちで指定。bootstrap.php
を書き換えるのはちょっと嫌だな…と。
export DB_HOST="localhost"
export DB_USERNAME="root"
export DB_PASSWORD=""
export DB_DATABASE="test"
export APP_NAME="App"
export DEBUG="true"
export APP_ENCODING="UTF-8"
export APP_DEFAULT_LOCALE="ja_JP"
export APP_DEFAULT_TIMEZONE="Asia/Tokyo"
export SECURITY_SALT="ランダムの半角英数字を入れる"
'host' => 'localhost',
/*
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'non_standard_port_number',
'username' => 'USERNAME',
'password' => 'PASSWORD',
'database' => 'DATABASE',
/*
* You do not need to set this flag to use full utf-8 encoding (internal default since CakePHP 3.6).
*/
//'encoding' => 'utf8mb4',
'timezone' => env('APP_DEFAULT_TIMEZONE'),
'host' => env('DB_HOST', ''),
/*
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'non_standard_port_number',
'username' => env('DB_USERNAME', ''),
'password' => env('DB_PASSWORD', ''),
'database' => env('DB_DATABASE', ''),
/*
* You do not need to set this flag to use full utf-8 encoding (internal default since CakePHP 3.6).
*/
//'encoding' => 'utf8mb4',
'timezone' => '+09:00',
おし、チェック。
まずサーバ。
いいね!
次ローカル。
画像上にURLがないから違いが分からないwww
でも私が違うこと分かってるwOKw
それぞれ違うDB見てる。
まとめ
まじでプログラム書くまでが長すぎて心折れるんだよな…。
最初に準備してくれる先輩に感謝。