Open1
Laravel入門しためも
dbはSQLiteでやった
PHP SQLite拡張のインストール
Ubuntuを使用している場合、以下のコマンドでPHP SQLite拡張をインストール
sudo apt update
sudo apt install php-sqlite3
PHP 8.2を使用している場合は以下のようにする
sudo apt install php8.2-sqlite3
インストール後、以下のコマンドでSQLite拡張が有効になっているか確認
php -m | grep sqlite
pdo_sqlite
sqlite3
ならおK
サーバーを起動します:
php artisan serve
ファイルおよびディレクトリのパーミッション設定
storage
と bootstrap/cache
ディレクトリの所有者とパーミッションを設定
# 所有者を現在のユーザーに変更
sudo chown -R username:username storage bootstrap/cache
# ディレクトリに書き込み権限を付与
chmod -R 775 storage bootstrap/cache
username=junのとき
sudo chown -R jun:jun storage bootstrap/cache database
chmod -R 775 storage bootstrap/cache database
chmod 664 database/database.sqlite
補足説明:
-
chown -R username:username
は、jun
ユーザーとそのグループに所有権を再帰的に変更 -
chmod -R 775
は、所有者とグループに読み取り、書き込み、実行権限を与え、その他のユーザーには読み取りと実行権限を与えます。
Laravelのキャッシュをクリア
パーミッションや拡張機能の変更後、Laravelのキャッシュをクリアして変更を反映させます。
php artisan config:clear
php artisan cache:clear
php artisan config:cache
再度サーバーを起動します:
php artisan serve
ブラウザで http://localhost:8000
にアクセス
.env
ファイルの設定確認
.env
ファイルでデータベース接続が正しく設定されていることを確認します。特に DB_CONNECTION
が sqlite
に設定されていることと、DB_DATABASE
が正しいパスを指していることを確認します。
DB_CONNECTION=sqlite
DB_DATABASE=/Projectまでのパス/database/database.sqlite
注意: DB_DATABASE
にはSQLiteデータベースファイルの絶対パスを指定してください。
SQLiteデータベースファイルが存在しない場合は、以下のコマンドで作成
touch database/database.sqlite
再度所有者とパーミッションを設定
sudo chown jun:jun database/database.sqlite
chmod 664 database/database.sqlite
マイグレーションの実行
php artisan migrate