プラグイン > その他 > プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mente119 |
投稿日時: 2021/5/12 10:29
対応状況: −−−
|
半人前 登録日: 2021/4/14 居住地: 投稿: 13 |
プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 [EC-CUBE] EC-CUBE4.0.5
[レンタルサーバ] GCP [OS] Linux [PHP] PHP Version 7.3.27 [データベース] Postgresql 10 [WEBサーバ] Apache/2.4.25 (Debian) [ブラウザ] Chrome 89.0.4389.114 お世話になっております。ECCUBE4環境で表題の現象が発生しているため、解決にご助力いただきたい次第です。 [現象] プラグインを削除するとECCUBE全体がServerErrorで動作しなくなる。 対象プラグイン 商品おすすめ順並び替えプラグイン for EC-CUBE4 ProductDisplayRank4 やったこと 管理画面からのプラグイン削除は正常に行えなかったため、以下手順で手動にて削除を実施。 下記URLの手順を参考にプラグイン削除を実施。 https://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&topic_id=22508&forum=19 1. dtb_pluginにインストールしていたプラグインのレコードがある場合は削除する 2.「app/Plugin」にプラグインのディレクトリが残っている場合は削除する 3. composer.jsonから該当のプラグインの記述を削除する 4. コマンドで「bin/console eccube:generate:proxies」を実行してproxieを再生成する 手順1、DBからの削除は正常に完了。管理画面から見ると未インストール状態になりました。 手順2、プラグインをサーバ上から削除した途端ServerErrorにてECCUBE全体が停止状態になってしまいました。 対象プラグインの記述が以下ファイルにあったため、その箇所をコメントアウトし再度手動にて削除実施するも同様にServerErrorが発生。 \app\proxy\entity\src\Eccube\Entity\Product.php use \Plugin\ProductDisplayRank4\Entity\ProductTrait; プラグインの正常削除まで行いたいです。 |
468 |
投稿日時: 2021/5/12 13:19
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 とりあえず手順3.4.まで終わらせて確認されてみては如何でしょうか?
|
mente119 |
投稿日時: 2021/5/12 16:12
対応状況: −−−
|
半人前 登録日: 2021/4/14 居住地: 投稿: 13 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 468様
ご連絡ありがとうございます。 失礼しました。記載が足りておりませんでした。 1. dtb_pluginにインストールしていたプラグインのレコードがある場合は削除する 2.「app/Plugin」にプラグインのディレクトリが残っている場合は削除する 3. composer.jsonから該当のプラグインの記述を削除する 4. コマンドで「bin/console eccube:generate:proxies」を実行してproxieを再生成する 手順1、DBからの削除は正常に完了。管理画面から見ると未インストール状態になりました。 手順2、プラグインをサーバ上から削除した途端ServerErrorにてECCUBE全体が停止状態になってしまいました。 手順3、4実施し 手順3、composer.jsonから該当のプラグインを削除しました。 手順4、コマンドは通りました。 その後手順2でプラグインをサーバ上から削除を実施しても、削除した瞬間から同じようにServerErrorが発生する状態です。 |
468 |
投稿日時: 2021/5/13 14:34
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 私の認識では、
手順2でプラグインをサーバ上から削除 でファイルがサーバから無くなってエラーが起こるので、そのエラーを解消する為に 手順3、手順4を行うものと思っています。 (サーバ上に存在するECCUBEが自動生成したproxieクラスに該当プラグインのファイルがなくなった事を伝えて再構築させる) なのでワンステップづつ挙動を確認するのではなく、2〜4までは続けて操作する必要があると思います。 手順4で作業は終わりだと思うのですが、そのあと手順2を実行されたのはプラグインのファイルが削除できてなかったのでしょうか?
|
mente119 |
投稿日時: 2021/5/14 9:24
対応状況: −−−
|
半人前 登録日: 2021/4/14 居住地: 投稿: 13 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 468様
ご返信ありがとうございます。 手順2、で削除(※)し、手順3、4を実施してもエラーが引き続き発生しておりました。 手順2で削除(※)したタイミングで発生したため、そのプラグインが起因するものと思い、削除(※)したプラグインを元のディレクトリへ戻すとエラーが収まる、といった感じです。 (※)ここでの削除というのは、念の為ファイル削除ではなく関係のない/tmpへ移動しております。 |
468 |
投稿日時: 2021/5/14 10:39
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 >手順2、で削除(※)し、手順3、4を実施してもエラーが引き続き発生しておりました。
そこまで操作してもエラーが発生するという事は、まだどこかにプラグインのファイルを参照するような記述が残っているのでしょうか? エラーのログにはエラーが発生している箇所が分かるような表示は無いでしょうか?
|
mente119 |
投稿日時: 2021/5/14 11:12
対応状況: −−−
|
半人前 登録日: 2021/4/14 居住地: 投稿: 13 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 468様
プラグイン参照の記述ですが、以下部分のみでした。 \app\proxy\entity\src\Eccube\Entity\Product.php この時、「Product.php」ファイルを/tmpへ動かしただけでも同じようにServerErrorとなりました。 ログには以下の内容が大量に記載されておりました。 (その他ログは流れてしまい、残っておりませんでした。) [2021-04-30 06:50:30] front.ERROR [N/A] [476c18e] [N/A] [Eccube\Log\Logger:log:66] - システムエラーが発生しました。 ["Property Eccube\\Entity\\Product::$display_rank does not exist","/var/www/html/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php",63,"#0 /var/www/html/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php(63): ReflectionProperty->__construct('Eccube\\\\Entity\\\\P...', 'display_rank')\n#1 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataInfo.php(964): Doctrine\\Common\\Persistence\\Mapping\\RuntimeReflectionService->getAccessibleProperty('Eccube\\\\Entity\\\\P...', 'display_rank')\n#2 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php(750): Doctrine\\ORM\\Mapping\\ClassMetadataInfo->wakeupReflection(Object(Doctrine\\Common\\Persistence\\Mapping\\RuntimeReflectionService))\n#3 /var/www/html/vendor/doctrine/persistence/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php(181): Doctrine\\ORM\\Mapping\\ClassMetadataFactory->wakeupReflection(Object(Doctrine\\ORM\\Mapping\\ClassMetadata), Object(Doctrine\\Common\\Persistence\\Mapping\\RuntimeReflectionService))\n#4 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(285): Doctrine\\Common\\Persistence\\Mapping\\AbstractClassMetadataFactory->getMetadataFor('Eccube\\\\Entity\\\\P...')\n#5 /var/www/html/var/cache/prod/ContainerNvnxdrx/EntityManager_9a5be93.php(53): Doctrine\\ORM\\EntityManager->getClassMetadata('Eccube\\\\Entity\\\\P...')\n#6 /var/www/html/vendor/doctrine/doctrine-bundle/Repository/ServiceEntityRepository.php(39): EntityManager_9a5be93->getClassMetadata('Eccube\\\\Entity\\\\P...')\n#7 /var/www/html/src/Eccube/Repository/ProductRepository.php(54): Doctrine\\Bundle\\DoctrineBundle\\Repository\\ServiceEntityRepository->__construct(Object(Doctrine\\Bundle\\DoctrineBundle\\Registry), 'Eccube\\\\Entity\\\\P...')\n#8 /var/www/html/var/cache/prod/ContainerNvnxdrx/EccubeProdProjectContainer.php(3030): Eccube\\Repository\\ProductRepository->__construct(Object(Doctrine\\Bundle\\DoctrineBundle\\Registry), Object(Eccube\\Doctrine\\Query\\Queries), Object(Eccube\\Common\\EccubeConfig))\n#9 /var/www/html/var/cache/prod/ContainerNvnxdrx/EccubeProdProjectContainer.php(3094): ContainerNvnxdrx\\EccubeProdProjectContainer->getProductRepositoryService()\n#10 /var/www/html/var/cache/prod/ContainerNvnxdrx/EccubeProdProjectContainer.php(2797): ContainerNvnxdrx\\EccubeProdProjectContainer->getEccubeExtensionService()\n#11 /var/www/html/var/cache/prod/ContainerNvnxdrx/EccubeProdProjectContainer.php(2870): ContainerNvnxdrx\\EccubeProdProjectContainer->getTwigService()\n#12 /var/www/html/var/cache/prod/ContainerNvnxdrx/EccubeProdProjectContainer.php(2423): ContainerNvnxdrx\\EccubeProdProjectContainer->getMobileTemplatePathListenerService()\n#13 /var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php(231): ContainerNvnxdrx\\EccubeProdProjectContainer->ContainerNvnxdrx\\{closure}()\n#14 /var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php(61): Symfony\\Component\\EventDispatcher\\EventDispatcher->sortListeners('kernel.request')\n#15 /var/www/html/vendor/symfony/event-dispatcher/ContainerAwareEventDispatcher.php(129): Symfony\\Component\\EventDispatcher\\EventDispatcher->getListeners('kernel.request')\n#16 /var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php(43): Symfony\\Component\\EventDispatcher\\ContainerAwareEventDispatcher->getListeners('kernel.request')\n#17 /var/www/html/vendor/symfony/http-kernel/HttpKernel.php(127): Symfony\\Component\\EventDispatcher\\EventDispatcher->dispatch('kernel.request', Object(Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent))\n#18 /var/www/html/vendor/symfony/http-kernel/HttpKernel.php(68): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1)\n#19 /var/www/html/vendor/symfony/http-kernel/Kernel.php(200): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true)\n#20 /var/www/html/index.php(76): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))\n#21 {main}"] [, , , , ] |
468 |
投稿日時: 2021/5/14 13:58
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 あとはキャッシュのクリアが必要かもしれません。
エラーで管理画面が操作できなくなっていると思いますので /var/www/html/var/cache/prod/以下のファイルを手動で削除する必要があるのではないでしょうか? リンク先ページのコマンドからキャッシュクリアの操作でキャッシュのクリアが実行できるかと思います。 https://doc4.ec-cube.net/plugin_error
|
mente119 |
投稿日時: 2021/5/14 19:28
対応状況: −−−
|
半人前 登録日: 2021/4/14 居住地: 投稿: 13 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 468様
ご連絡ありがとうございます。再度実施いたしましたので結果をご報告いたします。 1. dtb_pluginにインストールしていたプラグインのレコードがある場合は削除する DBから該当のプラグインを削除→管理画面の一覧からは消える。 2.「app/Plugin」にプラグインのディレクトリが残っている場合は削除する /app/Plugin/から該当プラグインを削除(/tmpへ移動。)→この時点でServerError発生。 3. composer.jsonから該当のプラグインの記述を削除する 以前削除したため、記載なし。 4. コマンドで「bin/console eccube:generate:proxies」を実行してproxieを再生成する \app\proxy\entity\src\Eccube\Entity\Product.phpの31行目でエラー発生。 use \Plugin\ProductDisplayRank4\Entity\ProductTrait; 該当箇所をコメントアウト、コマンドは正常に完了。 /var/www/html/var/cache/prod/配下を手動にて削除。→ServerError解消せず。 念の為コマンド「bin/console cache:clear --no-warmup」も実行したが、解消されず。 でした。 戻し作業としましては use \Plugin\ProductDisplayRank4\Entity\ProductTrait; 該当箇所をコメントアウト削除。 /tmp/から/app/Plugin/へ該当プラグインのディレクトリを戻す。 でServerError解消されております。 作業時のログがサーバ再起動と同時に消えてしまったため、ログが取得できていない状況です。 |
468 |
投稿日時: 2021/5/17 12:19
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: プラグインを削除するとECCUBE自体がServerErrorで動作しなくなる。 >4. コマンドで「bin/console eccube:generate:proxies」を実行してproxieを再生成する
>\app\proxy\entity\src\Eccube\Entity\Product.phpの31行目でエラー発生。 > >use \Plugin\ProductDisplayRank4\Entity\ProductTrait; 該当箇所をコメントアウト、コマンドは正常に完了。 \app\proxy\entity\src\Eccube\Entity\Product.php を削除してからコマンドを実行するとどうなるでしょうか? Product.phpは一旦、どこかにバックアップを取って試してみてください。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |