Magento 2“注意错误”,单击“内容”>“块”;页面无法正确加载


13

我正在使用Magento 2.0.4,每当我单击“内容”>“元素”>“块”时,都会收到以下错误消息:“注意出现问题”。

在此处输入图片说明

没有更多信息,单击“确定”后,它将转到带有加载圆圈的“ CMS阻止”页面,并且永不停止加载。我可以单击Add New Block按钮,然后创建并保存一个新块,但是那些新创建/保存的块不会显示在“块”页面中,因为它永远不会完全加载。

相关平台安装信息(如果需要,可以进行更多编辑):Magento版本2.0.4,PHP版本5.6.20

我已经在以下浏览器上测试过此问题的浏览器:Firefox 45.0.1,IE 11.0.9600.18231,Chrome 49.0.2623.110

这是直接从magentocommerce网站安装的Magento,而不是任何github下载。从Magento 2.0.2升级到Magento 2.0.4后,我已经刷新了所有内容,删除了静态内容,并运行了重新部署静态内容的命令。

请让我知道我在这里想念的东西。这是后端某处的权限问题吗?,编码问题,已知问题或发生了什么?当我在管理面板中单击其他任何内容时(例如,页面,主题,小部件等都正确加载且不生成任何错误消息),我似乎没有收到此错误消息。


删除供应商并重新安装是唯一适用于我自己的解决方案。
安迪·琼斯

Answers:


6

您应该检查var/logs文件夹以查看是否出现问题,以及服务器日志。

对我来说,问题与此https://github.com/magento/magento2/issues/5418有关

进入数据库表cataloginventory_stock_item并删除重复项,然后问题消失了。

如果仍不能解决问题,则可以尝试:

1)进入CD pub/static并运行find . -depth -name .htaccess -prune -o -delete

2)cd进入根文件夹并运行 rm -rf var/cache/ var/generation/ var/page_cache/ var/view_preprocessed/

3)运行 php bin/magento setup:static-content:deploy

如果仍不能解决问题,则可以采用根本性的选项重新安装:

1)删除供应商文件夹rm -rf vendor/*以及composer.lock根目录中的文件。

2)运行 composer install


+1为我工作。第二步之后,我刷新了页面,并对其进行了修复。因此,我不确定是真正解决了问题的第一步还是第二步。但是最有可能手动删除缓存文件的方法有所帮助。猜测cache:flush和cache:clean与rm -rf不同。无论如何,我还是执行了部署静态内容的3个步骤,到目前为止,一切看起来都不错。谢谢。
Mohammed Joraid

find -delete命令很危险,它删除了我的Magento安装的所有文件。应该在答案中将其删除/修复。
卡尔尼

@karni这并不危险。它无法删除magento安装的所有文件。如果您阅读了答案,它会说cd into pub/static。如果这样做,它只会删除static内部的文件。应该删除的。
Claudiu Creanga

由于某些原因,我无法编辑我之前的评论。您是对的(我没有CD,但不用担心,这是全新安装)。但是,我认为它只会删除.htaccess文件,而它似乎像rm -rf *一样工作,而我就像“ lol ... wut”:D。也许它被其他bin / magento命令所破坏。抱歉,您应该只选择.htaccess文件,对吗?
卡尔尼

@karni否,它会删除静态文件夹中除.htaccess文件之外的所有内容,您需要且不应删除该文件。
Claudiu Creanga

4

刚刚调试了完全相同的问题。当你看到

“注意:出了点问题”

消息,它将在内部生成错误报告,var/report其中包含发生错误的更多详细信息。我建议您删除该目录中的所有报告,并在后端刷新页面。这将生成一个包含更多详细信息的报告。

在我的情况下,一些page_id's从表中cms_page没有相应page_idcms_page_store导致以下错误:

a:4:{i:0;s:137:"Notice: Undefined index: store_id in /path/vendor/magento/module-store/Ui/Component/Listing/Column/Store.php on line 82";i:1;s:7434:"#0 /path/vendor/magento/module-store/Ui/Component/Listing/Column/Store.php(82): Magento\Framework\App\ErrorHandler->handler(8, 'Undefined index...', '/path/ma...', 82, Array)
#1 /path/vendor/magento/module-store/Ui/Component/Listing/Column/Store.php(66): Magento\Store\Ui\Component\Listing\Column\Store->prepareItem(Array)

通过添加缺少的page_id'sstore_id's路径,我能够解决此问题。



3

如果可以帮助任何人,我可以通过禁用NewRelic PHP报告模块来解决此问题。

该站点已启用SSL,带有HSTS标头,并且该模块试图注入的javascript跟踪代码来自非SSL端点。移除所有非SSL来源后,“阻止”页面将愉快地加载。

var / reports var / log / exception.log或var / log / debug.log中没有报告错误。

奇怪的是,似乎没有其他Magento管理页面受到此影响,可能是由于内联javascript无法注入而引发的错误也打破了Magento的ajax调用。

完全是推测,但是一旦禁用NewRelic,页面就会完美加载


2

就像@Helal提到的那样,最简单易用的解决方案是转到数据库并删除ui_bookmark表中的所有条目。

确保创建数据库备份,以便在出现问题时可以将其还原。

我没有其他有关为什么这是解决方案的信息。我尝试了如上所述的数据库解决方案,并且该方法有效。也许有人可以解释这背后的原因?


1

就我而言,这是对通知的权限

在此处输入图片说明


2
Ahhhhhhhh !!!! 我花了太多时间来处理此错误。感谢您发布此信息。它解决了我的问题。Magento Logic:1)向用户显示通知;2)用户无权访问通知;3)确定,然后显示通知,告知用户他们无权访问通知;4)您听不到我刚刚说的话吗?
Tony DeStefano,

0

我有一个简单的解决方案。

Follow steps->

1)First close pop up of something went wrong.
2)Then click on active filters and Inspect element and you will see here a class which enable background,bottom,position,z-index.....simply remove these attributes .
3)Now cross button is clickable in active filters and now we can remove filters from grid.Remove all filters and Open same page in new tab.

in my case I was getting same problem in sales->order section.I resolved same process

.admin__data-grid-loading-mask {
    background: rgba(255,255,255,0.5);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 399;
}

and I disable some attribute by enabling inspect element for admin section
and new class was 


.admin__data-grid-loading-mask {
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 399;
}

0

查看产品编辑页面时,Magento 2.1出现错误消息。以我为例,搜索错误消息时发现它是在AJAX响应失败时生成的,因此我使用Chrome开发工具来查找失败的特定AJAX响应。此响应的错误代码为500,这使我可以查看httpd错误日志(而不是magento日志),以发现存在PHP错误(在我的情况下是由Magento探查器引起的-禁用探查器导致了该错误)走开)。

您的错误情况可能会有所不同,但是希望此过程可以帮助您找到原因。


-1

对于Magento CE 2.0.15,您可以检查文件:

/vendor/magento/module-ui/view/base/web/js/grid/provider.js

110〜112行:

alert({
    content: $t('Something went wrong.')
});

希望这会有所帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.