質問 > フロント機能 > カスタマイズController で「ページがみつかりません」と表示される |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
WENet |
投稿日時: 2024/4/10 11:15
対応状況: −−−
|
新米 登録日: 2024/4/6 居住地: 投稿: 2 |
カスタマイズController で「ページがみつかりません」と表示される ▼テンプレート
[EC-CUBE] 4.1.2 [レンタルサーバ] エックスサーバー [OS] Linux、5.4.0-172-generic #190~18.04.1-Ubuntu SMP [PHP] 7.4.33 [データベース] MySQL 10.5.17-MariaDB-log [WEBサーバ] Apache [ブラウザ] Google Chrome 123.0.6312.106 [導入プラグインの有無] EC-CUBEペイメントPlus決済プラグイン(4.0系/4.1) [カスタマイズの有無] あり [現象] お世話になります。 ゲスト購入を抑制したいため、 以下のサイトを参考にカスタマイズControllerを追加しました。 (ゲスト購入のURLにアクセスしたらトップページへリダイレクトする処理) https://enginiya.com/entry/customize_guest_purchase /app/Customize/Controller/NonMemberShoppingController.php ``` <?php namespace Customize\Controller; use Eccube\Controller\AbstractShoppingController; use Symfony\Component\Routing\Annotation\Route; class NonMemberShoppingController extends AbstractShoppingController { /** * 非会員処理 * * @Route("/shopping/nonmember", name="shopping_nonmember") * @Route("/shopping/nonmember/shipping/{id}", name="shopping_nonmember_shipping", requirements={"id" = "\d+"}) */ public function index() { return $this->redirectToRoute('homepage'); } /** * お客様情報の変更(非会員) * * @Route("/shopping/customer", name="shopping_customer") */ public function customer() { return $this->redirectToRoute('homepage'); } } ``` 実装当時は問題なく動作していたのですが、気づいたら「ページがみつかりません」と表示されるようになっていました。 <ログ抜粋> ページがみつかりません。 ["","/src/Eccube/Controller/UserDataController.php",64] [GET, /shopping/nonmember] <やっていたこと> 上記で「ページがみつかりません」を確認する前に以下の実装をしていました。 /app/Customize/Controller/CustomCartController.php を追加し、カートの中身を全削除する処理を追加したのですが、この処理を呼び出すと「ページがみつかりません」と表示されてしまいました。 ``` <?php namespace Customize\Controller; use Eccube\Controller\AbstractController; use Eccube\Service\CartService; use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\Routing\Annotation\Route; class CustomCartController extends AbstractController { protected $cartService; public function __construct(CartService $cartService) { $this->cartService = $cartService; } /** * カートの中にある商品を全て削除する * @Route("/cart/clear", name="cart_clear") */ public function clear() { $this->cartService->clear(); return $this->redirectToRoute('cart'); } } ``` 念のため「NonMemberShoppingController.php」も確認したら同じ事象になっていたという経緯です。 <解消のためにやったこと> ①ECCUBE管理画面->コンテンツ管理->キャッシュ管理->キャッシュ削除 ②「var/cache/」配下の削除 ③「bin/console cache:clear --no-warmup」でキャッシュ削除 →いずれも解消せず。。。 何かしらキャッシュやごみが原因かと疑っているのですが、 他に確認観点がございましたらご教授いただきたく存じます。 よろしくお願いいたします。 |
tattsu |
投稿日時: 2024/4/10 11:25
対応状況: −−−
|
仙人 登録日: 2023/12/23 居住地: 投稿: 357 |
Re: カスタマイズController で「ページがみつかりません」と表示される キャッシュのせいではなくUserDataControllerで新規作成ページのURLからuser_dataを取り除くカスタマイズをしているためだと思います。
こちらのスレッドと類似なので一度見ていただければ良いと思います。 https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=28221&forum=19&post_id=112333#forumpost112333
|
WENet |
投稿日時: 2024/4/10 14:04
対応状況: 解決済
|
新米 登録日: 2024/4/6 居住地: 投稿: 2 |
Re: カスタマイズController で「ページがみつかりません」と表示される ご回答ありがとうございます。
ご指摘の通り、UserDataControllerにuser_dataを取り除くカスタマイズが入っているために発生しておりました。 (外部業者に委託して構築してもらったため、該当箇所のカスタマイズを見落としておりました) カスタマイズをもとに戻したところ、正常に動作することを確認いたしました。 お忙しいところご教授いただき、誠にありがとうございました。 助かりました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |