😉

Composerをさくらサーバに入れる(あとPHPMailer使用上の注意)

2022/07/26に公開

お疲れ様です。クロメルです。
今日はやっとさくらサーバでのComposerの使い方を理解できたので、
さくらサーバにLinuxコマンドを打つ方法という初歩から解説します。
この記事では試しにPHPMailerをインストールしてみます。

1.Tera TermでSSH接続をする

SSH(セキュアシェル)という安全にサーバを操作できる通信プロトコルがあります。
僕はTera Termという無料のソフトを使ってSSHを利用しています。

『Tera Term』
https://ja.osdn.net/projects/ttssh2/

インストールしたらTCP/IPにチェックを入れ、ホスト名をドメインを入れましょう。例えば、aaa_hogehoge.sakura.ne.jpみたいに書きます。「OK」を押すと、ユーザー名とパスフレーズを聞かれますので入力してください。
これでさくらサーバにコマンドを打てます。

2.composerのインストール

#ホームディレクトリに移動
% cd ~

#もしホームにbinディレクトリがなければ下のコマンドで作る
% mkdir bin

#このコマンドでcomposer.pharをホームにダウンロードする
% curl -sS https://getcomposer.org/installer | php

#ダウンロードしたファイルをbinディレクトリに移動し、リネームする
% mv composer.phar bin/composer

# ハッシュを再計算する(パスを通すようなもの)
% rehash 

curlは正直よく分かっていません汗。
そんなに困るところではないので、もっと知っておくべきと思う事を書いていきます。

mvコマンドでダウンロードしたcomposer.phar(PHPアーカイブファイル)リネームしていますね。
composerにしたので、コマンドを

composer require phpmailer/phpmailer

みたいに呼び出すことができるようになります。
これをしないと、

composer.phar require phpmailer/phpmailer

などとせねばなりません。
最後はrehashですが、これでサーバにcomposerが認識されます。
からくりは.cshrcという設定ファイルがホームにあって、

set path = (/sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin $HOME/bin)

というパス設定が書かれているのです。さくらサーバに関して言えば、デフォルトで最後に$HOME/binで指定されているので、再計算だけすればよいらしいのです。
これでcomposerコマンドを打つことでcomposerファイルをbinディレクトリから探して実行くれるので、composerを呼び出せるということになります。
インストールの確認方法として

% composer -V

と打った時、バージョン情報が表示できれば、インストール完了です。

3.phpmailerのインストール

いよいよPHPMailerのインストールです。
それは

% composer require phpmailer/phpmailer

と打つだけです。これでvendor/phpmailerディレクトリが出来、インストールされます。
カレントディレクトリにvendorディレクトリができるのでそれにはご注意ください。

このライブラリの詳しい使い方は例えば以下リンク先で。

https://www.webdesignleaves.com/pr/php/php_phpmailer.php

ただしここでは一個だけ注意があって、isSMTP()メソッドを使うなら、他の設定は次を加えて下さい。以下リンクの「Encryption flavours」見出しの部分に情報があります。

『the PHPMailer troubleshooting guide』
https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Host = '<ホスト名>';
$mail->Port = 587;

(ポート465の方は非推奨らしい)

今日はここまで、お疲れ様でした!

Discussion