如何解决 Magento 2 中最常见的问题
已发表: 2022-01-02Magento 的新版本即 Magento 2 带来了新的困难。 当您计划将旧的 Magento 版本升级到新版本时,您可能会遇到其中一些问题。 在当前的博客文章中,我们将讨论 Magento 2 版本中的常见问题及其对 Magento 商店所有者、Magento 开发人员和Magento 开发公司有帮助的解决方案。
Magento 2 中的常见问题及其解决方案
当您探索 Magento 2 平台时,经验丰富的 Magento 开发人员或任何其他人都可能面临最常见的问题。 您可能面临的问题可能是不可否认的小麻烦,但如果您不尽快解决这些问题,它们可能会成为您的更大问题。
因此,让我们了解 Magento 2 中最常见的问题及其解决方案:
在 Magento 2 安装后安装示例数据
一、下载
示例数据: sudo php bin/ magento示例数据:部署
然后安装,
示例数据: sudo php bin/ magento setup:upgrade
或者
sudo /opt/ lampp /bin/ php bin/ magento 样本数据:部署
sudo /opt/ lampp /bin/ php bin/ magento setup:upgrade

清除主题/CSS 缓存
要清除主题或 CSS 的缓存,请运行以下命令:
须藤 php bin/ magento缓存:刷新
须藤php bin/ magento缓存:干净
或者
sudo /opt/ lampp /bin/ php bin/ magento缓存:flush
sudo /opt/ lampp /bin/ php bin/ magento缓存:clean

重新索引
在 Magento 2 中,一个或多个索引器无效。 因此,您需要确保您的 Magento Cron 作业正在运行。
要重新索引您的商店,请在您的 CLI 中运行命令php bin\magento indexer:reindex。
如果您只想重新索引一个索引器,则编写命令 php bin\magento indexer:reindex indexer_name其中可以通过键入命令 php bin\magento indexer:info 找到indexer_name
![[已解决] 如何解决 Magento 2 中最常见的问题 - 重新索引](/uploads/article/172701/vx0AH1SO1U1luYay.png)
从布局中删除块
在 Magento 2 的更新版本中,remove 方法是
<referenceBlock name="block_name" remove="true"/>
例如:
<?xml version="1.0"?> <page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd"> <body> <referenceBlock name="block_name" remove="true"/> </body> </page>设置开发者模式
可以从CLI bin/ magento deploy:mode:set developer设置开发人员模式
获取 Magento 2 基本 URL
如果您想获取 Base URL ,那么您可以尝试以下代码:
$this->_storeManager->getStore()->getBaseUrl()
另外,使用:
$this->_objectManager->get('Magento\Store\Model\StoreManagerInterface')
->getStore($storeId)
->getBaseUrl();
获取媒体库 URL:
$this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA);
检查模块安装
要检查启用或禁用的模块列表,请使用以下命令。
magento 模块:启用 [-c|–clear-static-content] [-f|–force] [–all]
magento 模块:禁用 [-c|–clear-static-content] [-f|–force] [–all]
使用 jQuery 库
如果要添加 jQuery 之外的自定义 js 库,则需要在 require 函数中包含 js 代码,例如
要求(['jquery','jquery/ui'],函数($){
//你的js代码在这里
});
设置后端会话超时
您可以通过以下方式从管理面板设置后端会话超时
Stores->Settings->Configuration->Advanced->Admin->Security->Admin Session Lifetime (seconds)
脚本和 CSS 的 404 错误
当不在生产模式时,Magento 2 会尝试为一些静态资源创建符号链接。 您可以通过执行以下操作来更改该行为。
- 打开app/etc/di.xml ,找到virtualType name=”developerMaterialization”。 在该部分中,您将找到需要修改或删除的项目名称 =”view_preprocessed” 。 您可以通过将Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink 中的内容更改为Magento\Framework\App\View\Asset\MaterializationStrategy\Copy 来修改它
- 删除pub/static下的文件以摆脱任何现有的符号链接。 您可能要小心不要删除.htaccess
Magento 2 中的常见 SEO 问题
在分析新的 Magento 2 平台时,我们遇到了最常见的SEO错误。 当他们的 SEO 设置完美时,基于 Magento 2 的网站可以取得成功。 在最新版本的 Magento 中,您可以找到在 SEO 中所做的关键改进。 最常见的 SEO 错误及其解决方案是
为网站的 HTTP 和 HTTPS 版本编制索引
当您为网站的 HTTP 和 https 版本编制索引时,它会将其中一个版本视为重复内容。
为避免此错误,您应该索引首选版本,并且同一 URL 的另一个版本应该指向带有 rel canonical 的 https 版本。 例如,https 是您网站的首选版本,那么在 HTML 编码中,HTTP 版本应该具有指向 https 的 rel 规范,反之亦然。
文本阻塞分层导航参数
通常,就 SEO 而言,分层导航对您的网站一点好处都没有。 您应该始终避免在“原始”状态下索引过滤器、排序和分层导航。 此外,您可以使用分层导航扩展程序,将过滤和排序的页面转换为适当优化的登录页面。
常见的扩展问题和解决方案
当您使用 Magento 2 版本的任何扩展时,请检查以下问题和修复:
与 Magento 版本的兼容性
在您下载我们的任何 Magento 2 扩展之前,请检查它是否与您当前使用的 Magento 版本兼容。 例如,许多为 M 2.1 所做的扩展可能不适用于 2.0。
安装步骤
遵循安装指南中提供的所有步骤
最新版本的 Magento 2 扩展
如果您想使用任何扩展,请下载该扩展的最新版本以获得更好的功能。
清除静态缓存
安装扩展程序后,请不要忘记在商店中实际使用扩展程序之前清除静态缓存。 您可以通过以下方式执行此操作:系统 > 缓存管理 > 刷新静态文件缓存。
静态内容缓存
对设置或扩展进行任何更改后,请确保清除静态内容缓存。 这将确保前端正在处理新设置而不是旧 CSS 文件。
管理会话问题
要解决管理会话问题,请尝试注销然后再次登录到您的管理面板。
功能
在您的商店下载、安装和应用扩展之前,请仔细检查功能,因为它可能与商店现有扩展的功能发生冲突。
安装问题及解决方法
复制扩展的正确位置
应将扩展名复制到正确的文件夹才能正常工作。 例如,MConnect Media 的扩展名将位于: app/code/Mconnect/MODULE_NAME
系统要求
在运行 Magento 2 之前,请确保您满足所有系统要求。
Magento 2 问题调查的常用程序
- 检查 ./var/log 目录或您的 Magento 2 安装 - 在日志中查找任何错误或异常,尤其是在 log 和 system.log 中
- 如果您在打开页面时收到“处理您的请求时出错”消息,请从该消息中获取报告 ID 并检查 ./var/report 目录:将会有一个同名文件。
- 可能存在文件权限问题:检查 Magento 2 存储目录中文件的所有者及其权限。 使用 chown(更改所有者)和 chmod(更改模式)UNIX 命令来相应地更新它们。
- 检查 Web 服务器日志。 Fe,对于 Apache,它是 /var/log/apache2 或 /var/log/httpd,文件夹取决于您的系统。
- 清除 Magento 2 缓存文件(如果启用了缓存),有时它会有所帮助:
./var/缓存
./var/page_cache
./var/代
- 将商店切换到开发者模式:打开 Magento 根目录下的 .htaccess 文件并启用 SetEnv MAGE_MODE “developer”或使用 CLI 命令:php bin/magento deploy:mode:set developer
- 在这种模式下可以显示更多的技术信息(错误)。
- 在 ini 文件中启用 PHP 错误报告:
ini_set('display_startup_errors',1);
ini_set('display_errors',1);
错误报告(-1);
前端问题
- 检查浏览器控制台是否有错误(在 Chrome 中:开发人员工具/控制台)。
- 启用 Magento 2 模板页面提示:在管理面板中,打开以下部分:Stores / Settings / Configuration / Advanced / Developer / Debug / 'Enabled Template Path Hints for Storefront'
仍然有任何疑问? 联系我们的 Magento 开发人员以获得进一步的帮助。

