如何在本地主机上安装 Magento 2
已发表: 2021-04-12目录
2021 年 4 月 13 日更新:用户在尝试安装 Magento 2.4.2 时可能会遇到404 Not Found错误。 遵循文章中建议的解决方案以获得最佳结果。
Magento 推出 2.0 版本已经有很长一段时间了。 随着更友好的用户界面和改进的性能,许多现有的 Magento 1 用户很可能迟早会迁移到 Magento 2。 顺应潮流,SimiCart 也在 2016 年 12 月发布了 Magento 2 移动应用。
今天,我们将向您展示如何使用 XAMPP 服务器在 Windows 上本地安装 Magento 2.4。 本教程面向当前 Magento 2 用户以及完全不熟悉 Magento 的用户。 现在,让我们开始吧!
第 1 部分:安装和配置 XAMPP
第 1 步:下载 XAMPP
下载链接: https ://www.apachefriends.org/download.html
我们建议使用 PHP 版本 7.4.x 安装 XAMPP,这是 Magento 为 M2.4 推荐的。 同样根据 Magento,您可以使用 PHP 7.3 安装 Magento 2.4,但未测试或推荐。
第 2 步:安装 XAMPP
下载 XAMPP 后,双击该文件将其安装到您的计算机上。
单击下一步。

保留图像中的默认选择。 单击下一步。

选择您的安装文件夹。 默认位置是C:\xampp 。 之后,单击Next 。

单击下一步。

单击下一步。

安装程序现在将在您的计算机上安装 xampp。 请等一会儿。

设置完成后,您将看到“您要立即启动控制面板吗?”选项。 保持选中状态。 单击完成退出设置并进入 XAMPP 控制面板。

第 3 步:配置 XAMPP
在 XAMPP 控制面板中,单击“Apache”行上的Config按钮,然后单击“ PHP (php.ini) ”。

在php.ini
文件中,找到这些行并删除;
在每一行之前:
;扩展=国际 ;扩展=肥皂 ;扩展=套接字 ;扩展=钠 ;扩展名=xsl
将memory_limit
扩展为 4G:
memory_limit=4G
完成后,保存并关闭文件。 然后,单击 2 行 Apache 和 MySQL 上的Start按钮来启动它们。 在这一步之后不要退出 XAMPP,让它运行。
第 4 步:配置主机文件
打开C:\Windows\System32\drivers\etc\hosts
。 将以下行添加到最后一行:
127.0.0.1 www.localhost.com
第 5 步:创建数据库
浏览 URL http://localhost/phpmyadmin/
以访问 phpMyAdmin 页面。 输入数据库名称(例如“Magento2”),然后单击Create 。

记下您的数据库名称,因为稍后您需要在其上安装 Magento(使用root
用户)。
第 2 部分:安装 Elasticsearch
从 2.4 版开始,Magento 需要 Elasticsearch 作为目录搜索引擎。
下载 Elasticsearch 7.6.0:https://www.elastic.co/downloads/past-releases/elasticsearch-7-6-0(Magento 2.4.x 仅使用 Elasticsearch 7.6.x 进行测试。您可以使用其他 7.x版本由您自行决定,但我们建议使用经过测试的 Elasticsearch 版本。)
解压您刚刚下载的 .zip 文件。 在终端窗口中, cd
到解压缩的目录,然后运行以下命令:
.\bin\elasticsearch.bat
安装完成后,您可以检查 Elasticsearch 是否正确安装在http://localhost:9200
,这应该会为您提供如下信息:
{ “名称”:“Cp8oag6”, “cluster_name”:“弹性搜索”, “cluster_uuid”:“AT69_T_DTp-1qgIJlatQqA”, “版本” : { “数字”:“7.6.0”, “build_flavor”:“默认”, “build_type”:“焦油”, “build_hash”:“f27399d”, “build_date”:“2016-03-30T09:51:41.449Z”, “build_snapshot”:假, “lucene_version”:“8.7.0”, “minimum_wire_compatibility_version”:“1.2.3”, “minimum_index_compatibility_version”:“1.2.3” }, “标语”:“你知道,搜索” }
第 3 部分:使用 Composer 下载 Magento
由于 Magento 2 中的一些插件不适用于 composer 2.x,您需要使用稳定版本的 composer 1.x 来下载 Magento。 最好的方法是安装 Composer-Setup.exe。
此设置将安装最新的 composer 版本并设置 PATH 环境变量,以便您可以方便地从任何目录调用 composer。 安装完 composer 后,需要使用composer self-update --1
降级到较早的 1.x 版本,以确保最佳兼容性。
接下来, cd
到C:\xampp\htdocs
并运行以下命令:
composer create-project --repository-url=https://repo.magento.com/magento/project-community-edition=2.4.2 <install-directory-name>
作曲家需要一段时间才能下载并安装所有必要的模块。 一切完成后,您应该看到以下内容:

第 4 部分:使用命令行安装 Magento
从 Magento 2.4 开始,命令行界面是 Magento 的默认(也是唯一)安装方法。
在 Magento 2.4 安装过程中,您可能会遇到一些错误。 为防止此类错误,您首先需要对 Magento 文件进行一些调整。
为防止此错误:

在\vendor\magento\framework\Image\Adapter\Gd2.php
中找到validateURLScheme
函数并将其替换为:
私有函数 validateURLScheme(string $filename) : bool { $allowed_schemes = ['ftp', 'ftps', 'http', 'https']; $url = parse_url($filename); if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes) && !file_exists($filename)) { 返回假; } 返回真; }
接下来, cd
到您的 Magento 目录并运行以下命令:
php bin/magento setup:install --base-url=http://localhost/magento24/ --db-host=localhost --db-name=yourdbname --db-user=yourdbuser --db-password=yourdbpassword - -admin-firstname=admin --admin-lastname=admin [email protected] --admin-user=admin --admin-password=admin123 --language=en_US --currency=USD -- timezone=美国/芝加哥 --use-rewrites=1 --backend-frontname=admin --search-engine=elasticsearch7 --elasticsearch-host=localhost --elasticsearch-port=9200
说明:
-
base-url
:您的 Magento 目录所在的路径,格式如下:http[s]://<host or ip>/<your Magento install dir>/
-
db-host
:主机的主机名或 IP 地址 db-name
:将其更改为您刚刚创建的 Magento 数据库的名称db-user
:具有完全权限的数据库用户。 我们将使用默认的 root 用户。-
db-password
:数据库用户的密码。 如果您使用的是“root”数据库用户,请将其留空 admin-firstname
: 你的名字admin-lastname
: 你的姓氏admin-email
: 您的电子邮件地址admin-user
:您将用于登录管理面板的用户名admin-password
:您将用于登录管理面板的密码language
:您将在管理面板和店面中使用的语言。 使用en_US
类的语言代码。-
admin-email
:将其更改为您的电子邮件 currency
:设置在您的店面中使用的默认货币。输入php bin/magento info:currency:list
以获得支持的货币列表及其代码timezone
:更改为您所在的时区。请参阅支持的时区列表以更好地了解要填写的内容。-
url-rewrites
:设置为 1 以启用 Web 服务器重写。 这将有助于您的网站排名。 -
backend-frontname
:设置您的管理员 URL。 省略此参数将导致为您的 Magento Admin 路径随机生成 URL(例如,admin_jkhgdfq) -
search-engine
:设置要用于此 Magento 安装的 Elasticsearch 版本。 默认为elasticsearch7 -
elasticsearch-host
:运行 Elasticsearch 的主机名或 IP 地址。 默认是本地主机 elasticsearch-port
: Elasticsearch 正在监听的端口号。 默认值为 9200
有关更多可配置选项,请参阅 Magento 的官方指南。
成功安装后,您将看到以下消息:
安装后文件权限检查... 为了安全起见,请从以下目录中删除写权限:'C:/xampp/htdocs/magento24/app/etc' [进度:1270 / 1270] [SUCCESS]:Magento 安装完成。 [成功]:管理面板 URI:/admin 没有什么可导入的。
在此之后,我们必须进行一些额外的调整以使 Magento 与 Windows 一起工作,如下所示:
在app\etc\di.xml
中,将Symlink
替换为Copy
<virtualType name="developerMaterialization" type="Magento\Framework\App\View\Asset\MaterializationStrategy\Factory"> <参数> <argument name="strategiesList" xsi:type="array"> <item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item> <item name="default" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item> </参数> </参数> </virtualType>
在vendor\magento\framework\View\Element\Template\File\Validator.php
中,将第 138 行替换为:
$realPath = str_replace('\\', '/',$this->fileDriver->getRealPath($path));
最后,运行这些命令:
php bin/magento 索引器:重新索引 php bin/magento 设置:升级 php bin/magento 设置:静态内容:部署 -f php bin/magento 缓存:刷新
Magento 2.4.2 及更高版本的额外调整
从 Magento 2.4.2 开始,现在必须从/pub/
文件夹中提供内容以确保更好的安全性。 这就是为什么需要进行额外调整才能使您的 Magento 2.4.2 版本正常工作的原因。
第 1 步:将index.php
和.htaccess
文件从/pub/
复制到您的根文件夹。
第 2 步:在index.php
中找到以下行(在根文件夹中):
需要 __DIR__ 。 '/../app/bootstrap.php';
并将其替换为
需要 __DIR__ 。 '/app/bootstrap.php';
第 3 步:转到您最近创建的 Magento 2 数据库(在http://localhost/phpmyadmin
中)并使用以下 SQL 查询找到表core_config_data
:
选择 * 从 core_config_data
在此表中,您需要将这些行插入:
小路 | 价值 |
网络/安全/base_static_url | http://localhost/magento24/pub/static/ |
网络/不安全/base_static_url | http://localhost/magento24/pub/static/ |
网络/安全/base_media_url | http://localhost/magento24/pub/media/ |
网络/不安全/base_media_url | http://localhost/magento24/pub/media/ |
magento24
替换为您的 Magento 安装目录- 手动插入行:


- 使用 SQL 查询插入行:
INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/secure/base_static_url', 'http://localhost/magento24/pub/static/', current_timestamp()); INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/unsecure/base_static_url', 'http://localhost/magento24/pub/static/', current_timestamp()); INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/secure/base_media_url', 'http://localhost/magento24/pub/media/', current_timestamp()); INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/unsecure/base_media_url', 'http://localhost/magento24/pub/media/', current_timestamp());
您新添加的行应如下所示:

现在使用以下命令清除缓存:
php bin/magento 缓存:刷新
并刷新您的前端。 通过配置base-url
访问前端时,您现在应该能够看到这样的空白页面:

现在您可以使用您配置base-url
访问您的 Magento 前端。 例如,安装 Magento 2.4.2 后,我们可以在http://localhost/magento24/
访问我们的新 Magento 站点,在http://localhost/magento24/admin
访问我们的后端。
*注意:如果您在尝试登录 Magento 管理员帐户时遇到此错误:“您需要配置两因素授权……”

尝试运行以下命令:
php bin/magento 模块:禁用 Magento_TwoFactorAuth
第 5 部分:导入示例数据(可选)
运行此命令以导入示例数据:
php bin/magento 示例数据:部署
出现提示时,输入您的 Magento 身份验证密钥。 公钥和私钥在您的 Magento Marketplace 帐户中创建和配置。

导入数据完成后,运行:
php bin/magento 设置:升级 php bin/magento 设置:静态内容:部署 -f php bin/magento 缓存:干净
现在,刷新前端,您应该能够看到带有 Luma 主题和示例数据的默认 Magento 存储。

而已! 您已完成在本地主机上安装 Magento 2。 现在您可以访问您的 Magento 2 前端/后端并开始探索 Magento 2 功能。 我们希望这篇文章对您有所帮助!

延伸阅读



