EC-CUBEのパスワード再発行(パスワードを忘れた方はこちら)で送られるメールのURLには有効期限があり、既定は10分です(EC-CUBE 4.3.1の設定ファイルで確認)。
10分はやや短く、メールの受信が遅れただけで「有効期限が切れています」となり、会員から問い合わせが来る原因になります。この記事では有効期限を延ばす設定をご紹介します。
4系の場合 — eccube.yamlのeccube_customer_reset_expire
app/config/eccube/packages/eccube.yaml にある eccube_customer_reset_expire の値を変更します。単位は分です。
parameters:
eccube_customer_reset_expire: 60
上記で有効期限が60分=1時間になります。設定はコンテナに取り込まれるため、変更後はキャッシュクリア(bin/console cache:clear)が必要です。反映されない場合はまずキャッシュを疑ってください。
3系の場合 — config.ymlのcustomer_reset_expire
app/config/eccube/config.yml に以下を記載します。こちらも単位は分です。
customer_reset_expire: 60
どこまで延ばしてよいか
有効期限は「メールを受け取って操作するのに十分な長さ」があれば足ります。長くするほど、再発行URLが第三者に渡った場合に悪用できる時間も延びるため、60分程度までにとどめることをおすすめします。数時間〜無期限にする設定は避けてください。
なお、管理者側のパスワードを忘れてログインできない場合の復旧は別の手順になります。
EC-CUBEに関するお問い合わせ
[重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。