📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の11版が非表示)
27行目: 27行目:
Composerをインストールする。<br>
Composerをインストールする。<br>
composer.pharファイルが生成される。<br>
composer.pharファイルが生成される。<br>
  php composer-setup.php --install-dir=<Composerのインストールディレクトリ>
  php composer-setup.php --install-dir=<Composerのインストールディレクトリ> --filename=composer
<br>
<br>
composer.pharファイルのシンボリックリンクを作成する。<br>
composerファイルのバージョンを確認する。<br>
  ln -s composer.phar composer
  composer -V
<br>
<br>
.profileファイル等に、Composerのインストールディレクトリを環境変数<code>PATH</code>に追加する。<br>
.profileファイル等に、Composerのインストールディレクトリを環境変数<code>PATH</code>に追加する。<br>
60行目: 60行目:
  # 例2: メジャーバージョンとマイナーバージョンを指定する場合
  # 例2: メジャーバージョンとマイナーバージョンを指定する場合
  composer create-project laravel/laravel --prefer-dist <Laravelを使用するプロジェクト名> "8.6"
  composer create-project laravel/laravel --prefer-dist <Laravelを使用するプロジェクト名> "8.6"
<br>
<code>composer create-project laravel/laravel <プロジェクト名></code>コマンドにおいて、laravel/laravelの部分は、<ベンダー (開発元) の名前>/<パッケージ名> の形式である。<br>
<br>
例えば、laravel/laravelは<u>Laravelという組織が提供する、Laravelプロジェクトの基本テンプレート</u>という意味になる。<br>
<br>
これは、Laravelの公式スターターキット (プロジェクトテンプレート) を指す。<br>
GitHubでは、https://github.com/laravel/laravel として公開されている。<br>
<br>
Laravelの基本的なプロジェクト構造、設定ファイル、必要なディレクトリ等が含まれている。<br>
<br>
Composerでの扱いにおいては、Composerのパッケージリポジトリ (Packagist) に登録されているパッケージを指定する形式である。<br>
<code>composer create-project</code>コマンドは、このパッケージをテンプレートとして使用して新しいプロジェクトを作成する。<br>
<br>
これは、他のフレームワークやライブラリでも同様の命名規則が使用されている。<br>
* symfony/symfony
* guzzlehttp/guzzle
<br><br>
== VSCode / VSCodiumの拡張 ==
* PHP Extension Pack
* PHP Intelephense
*: コード補完や定義元へのコードジャンプ、クラスインポート等を行う。
*: VSCode標準のPHP言語機能は無効化する必要がある。
*:# [拡張機能]へ移動する。
*:# 検索バーに<u>@builtin php</u>と入力する。
*:# [無効にする]ボタンを選択する。
* PHP import checker
*: 使用していないクラスのインポートをハイライトする。
* PHP DocBlocker
*: メソッドの定義後のPHPDocの作成をサポートする。
*: PHPDocとは、関数やメソッドの上にアノテーションと呼ばれる@から始まる特殊な記法で引数や戻り値の型を補足するものである。
*: 使用方法は、<u>/**</u>と入力した後に[Enter]キーを押下する。
*: タイプヒンティングや戻り値の型指定が存在する場合は、自動で読み取る。
* Laravel Extension Pack
*: Laravel用のオートコンプリート機能を追加してくれる拡張機能である。
*: 主に、ルート名およびパラメータ、ビュー、変数、コンフィグ、バリデーションルールの補完を行う。
* Laravel Intelephense
* Laravel goto Controller
*: Route等で指定しているコントローラーのファイル名を選択することにより、そのコントローラファイルを開く。
* Laravel Blade Spacer
*: Bladeファイルにコードを記述する場合、以下に示すタグに自動でスペースを挿入する。
*:* <nowiki>{{ }}</nowiki>
*:* <nowiki>{!! !!}</nowiki>
*:* <nowiki>{{– –}}</nowiki>
<br><br>
<br><br>


87行目: 131行目:
<u>※注意</u><br>
<u>※注意</u><br>
<u>Laravelのプロジェクトディレクトリにあるpublicディレクトリがドキュメントルートであるため、このディレクトリをアクセスするように設定する。</u><br>
<u>Laravelのプロジェクトディレクトリにあるpublicディレクトリがドキュメントルートであるため、このディレクトリをアクセスするように設定する。</u><br>
<br>
Laravelでは、全てのリクエストをindex.phpにルーティングする。<br>
<br>
NginXでLaravelを使用する場合、<code>location /</code>ディレクティブに<code>try_files</code>ディレクティブが含まれている必要がある。<br>
これにより、Laravelのルーティングが正しく機能する。<br>
<br>
# リクエストは、まず、rootディレクティブに指定されたディレクトリの同名ファイルを探す。
# 見つからない場合は、index.phpにフォールバックして、Laravelのルーティングが処理する。
<br>
  # NginXの場合
  # NginXの場合
  sudo vi /etc/nginx/vhosts.d/vhost-laravel01.conf
  sudo vi /etc/nginx/vhosts.d/vhost-laravel01.conf
# Apache2の場合
sudo vi /etc/apache2/vhosts.d/vhost-laravel01.conf
<br>
<br>
  <syntaxhighlight lang="nginx">
  <syntaxhighlight lang="nginx">
116行目: 166行目:
   
   
     location / {
     location / {
         root   /home/<ユーザ名>/htdocs/laravel01/public;
         root       /home/<ユーザ名>/htdocs/laravel01/public;
         index index.php index.html index.htm;
         index       index.php index.html index.htm;
        try_files  $uri $uri/ /index.php?$query_string;
     }
     }
   
   
127行目: 178行目:
         fastcgi_pass  unix:/var/run/php-fpm/php-fpm.sock;
         fastcgi_pass  unix:/var/run/php-fpm/php-fpm.sock;
         #fastcgi_pass  127.0.0.1:9000;
         #fastcgi_pass  127.0.0.1:9000;
        #proxy_pass  http://127.0.0.1;
   
   
         fastcgi_index  index.php;
         fastcgi_index  index.php;
         include        fastcgi_params;
         include        fastcgi_params;
   
   
         fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
         fastcgi_param  SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        # proxy_pass  http://127.0.0.1;
     }
     }
   
   
    # mp3ファイルを設定する場合
     location /mp3 {
     location /mp3 {
         # sendfile関数の使用の有効化 / 無効化
         # sendfile関数の使用の有効化 / 無効化
147行目: 197行目:
  }
  }
  </syntaxhighlight>  
  </syntaxhighlight>  
<br>
# Apache2の場合
sudo vi /etc/apache2/vhosts.d/vhost-laravel01.conf
<br>
<br>
  <syntaxhighlight lang="apache">
  <syntaxhighlight lang="apache">
361行目: 414行目:
*: <br>
*: <br>
* MCrypt PHP拡張モジュールは動作可能かどうか確認する。
* MCrypt PHP拡張モジュールは動作可能かどうか確認する。
<br><br>
<br>
 
== エラー関連 ==
== エラー関連 ==
==== swiftmailer/swiftmailerライブラリ ====
==== swiftmailer/swiftmailerライブラリ ====