min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

お名前.com サーバー契約なし(ドメインのみ)の環境で Laravel を動かす

1,000万円を超えたbitcoinを少しだけどもらえるURL

https://bitflyer.com/invitation?id=l50e5ljw&lang=ja-JP

ハピタスからポイントもらえるURL

その買うを、もっとハッピーに。|ハピタス

 

お名前.comのドメイン名のみ契約した状態でもssh接続すると /home/ユーザ名/public_html/20210101xxx.onamaeweb.jp/という公開フォルダに接続できる。

そこにおいたファイルは(ドメイン名は長ったらしいが)外部公開はされてるわけで、ここにtoC向けのサイトというよりは、例えばShopifyのWebhookに使うための自作公開APIを置いて商品注文をコントロールする場所には使えるわけだ。

Laravelを置いておけばAPI作成も楽になろう。インストールしてみる。

 gn-office.pro

 

これから打つコマンド(Laravelインストール用)一覧

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

$ php composer-setup.php

$ php -r "unlink('composer-setup.php');"

$ mkdir ~/bin

$ mv composer.phar ~/bin/composer

Laraveインストールやってみる

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

$ php composer-setup.php

$ composer create-project laravel/laravel production "^10.0"

これは不要だった(公開ディレクトリのシンボリックリンク

これはやらなくても公開できたのでスルー。

ln -s ~/production/public/.htaccess ~/public_html/example.com/

ln -s ~/production/public/favicon.ico ~/public_html/example.com/

ln -s ~/production/public/robots.txt ~/public_html/example.com/

ln -s ~/production/public/web.config ~/public_html/example.com/

ln -s ~/production/public/index.php ~/public_html/example.com/

ln -s ~/production/public/mix-manifest.json ~/public_html/example.com/

ln -s ~/production/public/js ~/public_html/example.com/

ln -s ~/production/public/css ~/public_html/example.com/

ln -s ~/production/public/storage ~/public_html/example.com/

 

Laravelインストールフォルダ/public/.htaccessの編集

2行目から4行目の<IfModule>の記述を削除すると、Laravelインストールフォルダ直下のpublicが公開できる。

 

コントローラ作成

$ php artisan make:controller コントローラ名

$ vim Laravelインストールフォルダ/プロジェクトフォルダ/app/Http/Controllers/コントローラ名.php

DBマイグレーションファイルの作成

$ php artisan make:migration create_TraDB_table

Schema::create('テーブル名', function...

touchコマンドでDBの実体(ファイル)を作る。sqlite3はファイルベースのDBだから。

$ touch database/DB名.sqlite

$ php artisan migrate

userテーブルは元からあったらしくエラーになってしまった。shopsテーブルでも作るか…