質問 > フロント機能 > 404エラーはトップページにリダイレクトさせたい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
Arcaim |
投稿日時: 2019/12/18 11:16
対応状況: −−−
|
常連 登録日: 2009/10/23 居住地: 投稿: 34 |
404エラーはトップページにリダイレクトさせたい EC-CUBE4.0.2
サーバーOS:Linux Ubuntu DBサーバー:MySQL 5.7.28-0ubuntu0.16.04.2 WEBサーバー:Apache PHP:7.3.12 サイトに存在しないファイルへのアクセス時、 404エラー「Not found」を返しますが、 404を返さず、ステータス200のまま 自動的にトップページまたは個別に作成した「/404.html」などに リダイレクトさせたいのですが、方法をご教示いただけませんでしょうか? .htaccess に ErrorDocument 404 /404.html と記しても 動作せず、途方に暮れています。 お手数をお掛けしますが宜しくお願いします。 |
umebius |
投稿日時: 2019/12/18 12:33
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 404エラーはトップページにリダイレクトさせたい src/Eccube/EventListener/ExceptionListener.php
でエラーの場合、エラーメッセージを表示するよう指定しています。 このファイルを修正するか、本体ファイルを修正したくなければ独自にListenerを作成することでリダイレクトさせることは可能です。 リダイレクトさせるコード自体はこのような形になると思います。
※src/Eccube/EventListener/ExceptionListener.phpは、開発環境(.envでAPP_ENV=devにしている場合)は動作しないように設定されていると思いますのでご注意ください
|
Arcaim |
投稿日時: 2019/12/23 15:18
対応状況: −−−
|
常連 登録日: 2009/10/23 居住地: 投稿: 34 |
Re: 404エラーはトップページにリダイレクトさせたい umebius 様
ご返信、ご教示ありがとうございます。 お知らせいただいたコードは、ExceptionListener.phpの何行目あたりに挿入すべきでしょうか? お手数ですが宜しくお願い致します。 |
umebius |
投稿日時: 2019/12/23 18:24
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 404エラーはトップページにリダイレクトさせたい if ($exception instanceof HttpExceptionInterface) { $statusCode = $exception->getStatusCode(); このif文ブロックの最後あたりか、 ログに残すにはlog_error関数の後で良いかと思います。
|
Arcaim |
投稿日時: 2020/1/6 10:13
対応状況: 解決済
|
常連 登録日: 2009/10/23 居住地: 投稿: 34 |
Re: 404エラーはトップページにリダイレクトさせたい ありがとうございます。大変参考になりました。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |