- 1. 概要
- 2. インストール
- 3. Composer 2
1. 概要
これが、結構大変だったのです。
メモリが足りないやら、所有者権限がないやら・・・。
その辺のいきさつは、「PHP - Composer(パッケージ管理)」をご参照ください。
2. インストール
わたしが、最終的にうまくいった方法。
面倒くさいことに、「Laravel」は、管理者とクライアントの所有権が競合しちゃうので。
「root」ユーザ権限で。
chown 「Laravel」管理者 /パス/storage/logs/laravel.log
chown -R 「Laravel」管理者 /パス/bootstrap/cache
「Laravel」管理者で。
メモリ不足を回避するために、少しコマンドが複雑になっています。
カレントディレクトリを「Laravel」のパスへ移動して。
$ php -d memory_limit=-1 /usr/local/bin/composer.phar require phpmailer/phpmailer
Using version ^6.3 for phpmailer/phpmailer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fideloper/proxy
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
75 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
これで、無事インストールできたようです。
元に戻します。
なので、「root」ユーザ権限で。
chown www:www /パス/storage/logs/laravel.log
chown -R www:www /パス/bootstrap/cache
3. Composer 2
前項は、「Composer 1」で作業したのですが、別のプロジェクトでインストールしようとしたら、「Composer 1」に「PHPMailer」がなくなっておる・・・。
「Composer 2」をインストールしなおすのですが、そのあたりは「PHP - Composer(パッケージ管理)」をご参照ください。
同じ手順で、「Composer 2」でインストールしようとすると
$ php -d memory_limit=-1 /usr/local/bin/composer.phar require phpmailer/phpmailer
Using version ^6.5 for phpmailer/phpmailer
./composer.json has been updated
Running composer update phpmailer/phpmailer
Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
- Locking phpmailer/phpmailer (v6.5.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
- Downloading phpmailer/phpmailer (v6.5.0)
- Installing phpmailer/phpmailer (v6.5.0): Extracting archive
3 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
Class App\Lib\Mail located in ./app/Lib/mail.php does not comply with psr-4 autoloading standard. Skipping.
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fideloper/proxy
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
75 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
なんだか、前回と違いますわん。不安だなぁ。
ようわからんのは、次ページで述べている
use PHPMailer\PHPMailer\PHPMailer;
$mail = new PHPMailer();
ちゅうのが、エラーにならずに使えております。
なんでだろうな・・・。
find /パス -name PHPMailer
で探しても、「PHPMailer」は、見当たらんのですよね。
どこかで、エイリアスを切っておるのだろうか。
|