如何在 Fedora 34/33 上安装 Magento2

2023-11-19

Magento 是最好的企业级电子商务软件和解决方案。它由开放、灵活的下一代架构提供支持。使用 Magento 开发的应用程序将为用户提供最佳且引人入胜的购物体验。其性能优于其他可用的电子商务应用程序。 Magento 2 是最新版本。该版本较之前的 Magento 版本有许多改进更改和优化。

本教程将帮助您在 Fedora 系统上配置 Magento 应用程序。

第 1 步 – 安装 LAMP

首先需要在Fedora系统上搭建LAMP环境。您可以使用以下命令从默认存储库安装 Apache Web 服务器和 PHP。


sudo dnf update
sudo dnf install httpd
  

然后安装 PHP 和其他所需的 PHP 模块。


sudo dnf install php libapache2-mod-php php-mysql php-dom php-simplexml 
sudo dnf install php-curl php-intl php-xsl php-mbstring php-zip php-xml
  

第 2 步 – 安装 MySQL 服务器

您可以使用 MySQL 或 MariaDB 作为 Magento 应用程序的数据库服务器。要安装 MySQL 服务器,请运行以下命令。


sudo dnf install mysql-server
  

将安装默认的 MariaDB 数据库服务器。现在启动服务并完成数据库服务器的初始设置。


sudo systemctl enable mariadb
sudo systemctl start mariadb
  

现在运行以下命令来完成 Mariadb 设置:


sudo mysql_secure_installation
  

按照屏幕上的说明进行操作。以下是用户需要输入的内容:

  • 输入 root 的当前密码(不输入):[按输入键]
  • 设置root密码? [是/否]y
  • 新密码:[输入您的密码]
  • 重新输入新的密码:[再次输入密码]
  • 删除匿名用户? [是/否]y
  • 禁止远程root登录? [是/否]y
  • 删除测试数据库并访问它? [是/否]y
  • 现在重新加载权限表? [是/否]y

第 3 步 – 安装 PHP Composer

本教程需要 PHP Composer 来完成安装。要在系统上安装 PHP 编译器,请执行以下命令:


curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer    
chmod +x /usr/local/bin/composer   
  

第 4 步 – 下载 Magento 2

您可以从官方 Github 存储库下载 Magento 源代码或website。下载完成后 下载存档文件后,将其解压到网站文档根目录下。所以我们可以直接从网络浏览器访问它。


wget https://github.com/magento/magento2/archive/2.3.zip
mv magento2-2.3 /var/www/magento2
  

将Magento文件放置在适当的位置后,使用composer安装所需的库


cd /var/www/magento2
composer install
  

作曲家安装将需要一些时间。一旦 Composer 完成安装,请设置文件的建议权限以与 Apache Web 服务器一起运行。


sudo chown -R www-data.www-data /var/www/magento2
sudo chmod -R 755 /var/www/magento2
sudo chmod -R 777 /var/www/magento2/{pub,var}
  

第 5 步 – 创建 MySQL 用户和数据库

我们已经在系统上运行了 MariaDB,并在前面的步骤中生成了 root 密码。最好为 Magento 配置使用单独的帐户。使用 root 用户登录数据库服务器,并为新的 Magento 2 安装创建数据库和用户。


mysql -u root -p

mysql> CREATE DATABASE magento2_db;
mysql> CREATE USER magento2_usr@'localhost' IDENTIFIED BY 'pa$$word';
mysql> GRANT ALL ON magento2_db.* TO magento2_usr@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit
  

第 6 步 – 设置 Apache VirtualHost

现在为您的域创建一个 Apache 虚拟主机。


sudo vim /etc/httpd/conf.d/webhost.tecadmin.net.conf
  
1
2
3
4
5
6
7
8
<虚拟主机 *:80>
服务器管理员 admin@example.com
服务器名称 webhost.tecadmin.net
文档根目录 /var/www/magento2
    <目录 /var/www/magento2>
允许覆盖 all
    </目录>
</虚拟主机>

保存并关闭文件。重新启动 Apache 服务以重新加载配置。


sudo systemctl restart httpd.service
  

第 7 步 – 运行 Web 安装程序

让我们开始使用 Web 安装程序安装 Magento2。在网络浏览器上访问您的 Magento 2 目录,如下所示。它会将您重定向到安装起始页。


 http://webhost.tecadmin.net
  

7.1.同意许可协议并单击“同意并设置 Magento”

7.2.现在单击“开始准备测试”。 Magento 将在此处检查系统要求。成功完成后,您将看到如下所示的屏幕,然后只需单击“下一步”。修复此屏幕上出现的问题,然后单击重试。

7.3.在此处输入您在步骤 4 中创建的数据库详细信息。

7.4.安装程序将向您显示商店地址(与我们的地址相同)。它还为管理界面生成一个随机 URL。您可以根据您的要求更改它。出于安全原因,它不会将 URL 视为 admin。

7.5.为您的 Magento 应用程序创建一个具有安全密码的管理员用户。

7.6.在此步骤中,Magento 已准备好安装。单击现在安装按钮开始安装并等待其完成。

7.7.到这一步,Magento安装就完成了。

7.8.最后,它将打开管理员登录屏幕。使用在向导期间创建的管理员凭据。身份验证成功后,它将打开管理面板。

恭喜!您已在 Fedora 系统上成功配置 Magento2。

第 8 步 – 安排 Cronjobs

最后,为您的 magento2 安装安排后台 cronjobs。这些 cronjobs 执行一些活动,例如重新索引、新闻通讯、更新汇率、发送自动电子邮件和生成站点地图等。为了安排时间,这些作业编辑 crontab 文件


crontab -e
  

并在文件末尾添加以下 cronjobs 并保存。


* * * * * php /var/www/magento2/bin/magento cron:run
* * * * * php /var/www/magento2/update/cron.php
* * * * * php /var/www/magento2/bin/magento setup:cron:run
  

结论

本教程帮助您在 Fedora Linux 系统上逐步安装 Magento2 应用程序。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Fedora 34/33 上安装 Magento2 的相关文章

  • 访问 Magento 购物车和/或结帐中的运费

    请注意 这个问题是关于运费 而不是价格 有一个重要的区别 即运输方式为店主支付的费用是多少 而不是客户支付的费用 The shipping tablerate数据库表包括一个cost字段 该字段填充在Mage Shipping Model
  • Magento - 将特定父类别的子类别列为链接

    我是 php 的初学者 并且一直试图将一个父类别的子类别作为链接调用 我得到了这个 它调出了 getName 但 getUrl 根本没有返回任何 URL 输出代码只是 li a href name of sub a li
  • PHP Web 应用程序 (Magento) 遭到黑客攻击;这段黑客代码有什么作用?

    我刚刚安装的 Magento 1 3 2 4 被黑了 你能告诉我这段代码的目的是什么吗 另外 如何阻止这种情况以及如何发现漏洞 谢谢 function net match network ip ip arr explode network
  • 不使用 Magento Connect 安装 magento 插件

    我有一个我的客户购买的插件 它是一个 zip 文件 如何在不使用 Magento 连接的情况下安装插件 通常你可以直接解压 但你应该检查目录结构是Magento风格 它至少应该有app code app etc modules目录
  • 如何强制magento退出

    我在 magento 社区 1 6 工作 我需要在站点进程的一个阶段清除会话或注销当前用户 我将如何做到这一点 Mage getSingleton customer session gt logout
  • Magento 以编程方式创建捆绑产品

    在哪里可以找到使用 PHP 创建 BundleProducts 的完整且有效的示例 我正在使用 Magento 1 7 谷歌只给我片段 EDIT 到目前为止我正在使用这段代码 但是保存会抛出异常 致命错误 在第 73 行对 app code
  • 用于输入地址的自动完成文本框是个好主意吗?

    通过传统形式输入我的地址让我发疯 为什么我必须输入我的城市 州 and邮政编码何时可以从我的邮政编码推断出我的城市和州 从下拉列表中选择您的状态是一件很痛苦的事情 通常您无法使用 Tab 键进入它 您必须使用鼠标等 替代文本 http im
  • 无法在自定义脚本中检索折扣产品价格

    我有一个自定义脚本 可以以 csv 格式输出特定产品的列表 商店的前端运行良好 但是当在我的脚本中检索产品的价格时 实际的 FinalPrice 没有考虑我的目录价格规则 这有点混乱 因为getFinalPrice 方法在模板文件等中完美运
  • 在本地计算机上安装 magento 后,我忘记了管理员密码

    在我的本地计算机上安装 magento 后 我忘记了我提供的管理员密码 我无法登录我的管理区域 如何重置密码 我读过这篇文章http www atwix com magento reset admin password mysql http
  • 下订单时如何在 Magento 中触发电子邮件?

    我需要以下问题的解决方案 1 客户下订单 2 店主收到没有价格信息的电子邮件 例如装箱单 我需要编辑哪些文件 我读过很多帖子 但他们似乎没有提到文件路径 Thx 实现这一目标的两种可能方法 您可以为该类创建模型重写Mage Sales Mo
  • 检测集合是否包含数据

    这可能是一个简单的问题 但我找不到答案 我如何知道我的收藏是否没有数据 I do datas Mage getModel zzz zzz gt getCollection 如果我做一个 datas gt getData 它返回一个空数组 但
  • 以编程方式将 Magento 订单标记为完整

    当我从第三方服务收到特定响应时 我尝试将 处理 订单标记为 完成 我已经为此做好了一切设置 但唯一的问题是订单仍处于处理状态 我正在生成发票 不过我认为我不需要这个 因为每个项目在 Magento 后端都被标记为 已开票 和发货 如下所示
  • 如何在 Magento 中缓存集合?

    我有一个需要大量时间才能加载的集合 我想要的是缓存它 APC Memcache 无法缓存整个对象 因为它无法反序列化并且超过 1 MB 我认为缓存集合数据 col gt getData 是可行的方法 但我找不到基于此数组重建对象的方法 有什
  • 如何验证magento中的单选按钮?

    在我的自定义模块中 我有一个带有单选按钮的表单 当我单击提交按钮时 它不会验证单选按钮 如何使用 Magento 默认验证类进行验证 Thanks 我得到了答案 use validate one required by name在单选按钮的
  • PayPal 网关已拒绝请求。安全标头无效(#10002:安全错误 Magento

    在 magento 中增加 PayPal 预付款 我已填写 magento admin 中的所有凭据 但是当我进入前端并单击 pay pal 按钮时 它给出了 PayPal 网关已拒绝请求 安全标头无效 10002 安全错误 我用谷歌搜索了
  • Magento 自定义模块与自定义数据库表管理页面

    我按照维基帖子设置了带有自定义数据库表的自定义模块 http www magentocommerce com wiki 5 modules and development 0 module development in magento cu
  • 通过 SOAP API V2 将简单产品链接到可配置产品

    有谁知道如何通过 API 将可配置产品链接到简单产品 我不认为 Product Link API 会这样做 http www magentocommerce com wiki doc webservices api api catalog
  • Magento - 2 个或更多观察者关注同一事件

    我的 2 个观察者正在观察相同的情况sales order shipment save before event ModuleA是我先创建的 然后我创建的ModuleB 现在只ModuleB的观察者被调用而不是ModuleA 请让我知道我该
  • 如果未选择第一个下拉列表,则禁用第二个下拉列表

    如果未选择第一个下拉列表 我想禁用第二个下拉列表 有什么方法可以使用 javascript 执行此操作吗 所以想法是 如果未选择第一个下拉列表 则必须禁用第二个下拉列表 我只是想说 我不能在下拉列表中添加任何ID或任何类 所有类和id都是动
  • Magento:向信用卡表单添加新字段

    我正在尝试修改信用卡表单以添加一些名为 银行名称 和 银行电话号码 的新自定义字段 但这似乎无法通过后端完成 我已经在网络和此处进行了搜索 但无法找到有关如何向信用卡表单添加新的自定义字段的任何参考信息 我认为这几乎与在客户注册表中添加新字

随机推荐

  • 如何在 CentOS/RHEL 8 上安装 Python 3.9

    Python 是一种功能强大且广泛使用的编程语言 以其简单性 可读性和跨 Web 开发 数据科学和机器学习等各个领域的多功能性而闻名 随着 Python 3 9 的发布 开发人员可以从众多增强 优化和新功能中受益 在本教程中 我们将指导您完
  • 每个开发人员都应该了解的 15 种高级 JavaScript 技术

    JavaScript 是一种多功能且功能强大的编程语言 已广泛用于 Web 应用程序的开发 作为开发人员 必须充分了解该语言的功能和先进技术 才能创建健壮 高效且可扩展的 Web 应用程序 以下是每个开发人员都应该了解的 15 种高级 Ja
  • 如何列出 MongoDB 数据库中的所有集合

    问题 如何列出 MongoDB 数据库中所有可用的集合 MongoDB 是一个 NoSQL 数据库 以 JSON 格式存储文档 集合是 MongoDB 中存储 JSON 文档的实体 即类似于 RDBMS 数据库中的表 您可以使用以下选项之一
  • 如何使用 Yum 在 CentOS 和 RHEL 上安装 phpPgAdmin

    phpPgAdmin is web based client written in php for accessing and managing PostgreSQL databases It provides very efficient
  • 如何在 Linux 中提取 tar.gz 文件

    Linux 是一个功能强大且灵活的操作系统 因其稳健性和多功能性而备受赞誉 它广泛应用于服务器 嵌入式系统和个人计算机等领域 然而 对于新用户 甚至对于一些有经验的用户来说 某些任务可能看起来令人畏惧 其中一项任务是文件压缩和提取 尤其是在
  • JavaScript every() 方法:提示、技巧和用例

    JavaScript 巩固了其作为世界上最流行和最广泛使用的编程语言之一的地位 这是有充分理由的 它的动态特性和多功能性使其成为 Web 开发 从客户端交互到服务器端编程 的首选 提高其效率的一个重要因素是内置方法的多样性 其中一种有用的方
  • Vim 入门:初学者指南

    Vim 是一种功能强大且广泛使用的文本编辑器 为用户提供了许多用于编辑和操作文本的高级功能 然而 如果您是 Vim 新手 那么上手可能会有点困难 在本文中 我们将提供 Vim 初学者指南 涵盖从基本导航到高级编辑技术的所有内容 读完本指南后
  • 如何在 Linux 中安全自动删除临时文件

    Linux 系统与任何其他操作系统一样 都会生成会随着时间累积的临时文件 虽然这些文件可用于多种目的 但它们会占用宝贵的存储空间 甚至会降低系统速度 因此 定期删除这些文件对于获得最佳系统性能至关重要 在本指南中 我们将探索安全 自动删除临
  • 使用 Linux 防火墙将端口转发到 Docker 容器

    在当今的容器化世界中 Docker 已成为部署和管理应用程序的流行解决方案 一种常见的用例是将网络流量从主机上的特定端口转发到 Docker 容器内的端口 当您想要将容器内运行的服务公开给外界或需要设置反向代理以进行负载平衡时 这尤其有用
  • 如何在 PHP 中删除特定数组元素

    问 如何使用 PHP 从数组中删除特定元素 在本教程中 您将学习两个 PHP unset 和 array splice 方法来删 除特定的数组元素 使用 PHP unset 函数 使用PHPunset 函数从数组中删除一个元素 基本上它用于
  • 在 Linux 中删除文件的最后 N 行

    在本文中 我们将讨论在 Linux 中删除文件最后 N 行的多种方法 为此 我们将使用各种 Linux 实用程序 例如 sed awk 和 head 在我们继续之前 重要的是要提到 如果操作不当 直接在 Linux 系统上操作文件可能会造成
  • 用于富 Web 开发的 13 个免费 JavaScript 库和插件

    在这个新的一天伴随着最新技术崛起的舞台上 让您的商业品牌绽放光芒的唯一方法就是紧跟市场流行的趋势 使用 HTML 和 JavaScript 等技术是通过其中使用的一流功能获得盈利业务的灵魂 当从技术角度谈论 JavaScript 时 考虑到
  • 如何在不终止 Linux 上正在运行的进程的情况下关闭终端

    例如 您正在运行耗时的进程 并且您不希望该作业由于终端关闭而被终止 要处理这种情况 您只需从活动作业表中删除作业即可 这样当终端关闭时作业就不会被杀死 指示 按照以下说明从终端分离正在运行的作业 1 Press CTRL Z to susp
  • 如何允许远程访问 Tomcat 管理器

    Apache Tomcat 是一种广泛使用的开源 Java Servlet 容器 允许您托管和管理基于 Java 的 Web 应用程序 Tomcat Manager 是一个基于 Web 的界面 提供用于管理已部署应用程序的管理工具 默认情况
  • DUF – 适用于 Linux、BSD 和 macOS 的跨平台磁盘使用/免费实用程序

    随着数据的指数级增长 管理存储和分析磁盘使用情况已成为系统管理员和日常计算机用户的一项基本任务 了解磁盘空间的利用方式有助于您优化系统并就存储分配做出明智的决策 DUF 即磁盘使用 空闲实用程序 是一款功能强大的跨平台工具 旨在帮助您做到这
  • 如何在 Shell 脚本中检查 Python 版本

    Python 是由 Guido van Rossum 创建的一种高级通用编程语言 它于 1991 年首次发布 通常 基于 Linux 的发行版都预装了 Python 版本 本教程将帮助您在脚本中查找 Python 版本详细信息 此外 您还可
  • 如何在 Debian 11 上安装和配置 Fail2ban

    每台可通过互联网访问的服务器都面临着遭受暴力破解和恶意软件攻击的巨大风险 黑客尝试使用暴力尝试来访问可在公共网络上访问的应用程序 Fail2ban 是一种工具 用于通过提高基于 Linux 的计算机的安全性来保护其免受自动攻击 它监控任何恶
  • 使用 MySQL 中的预准备语句防止 SQL 注入攻击

    SQL 注入攻击是当今 Web 应用程序面临的最常见的安全威胁之一 当恶意行为者使用特制的输入来操纵数据库查询并获得对敏感数据的未经授权的访问时 就会发生这些攻击 为了防止 SQL 注入攻击 开发人员可以在 MySQL 中使用准备好的语句
  • 如何在 Bash 脚本中使用 ${} 提取子字符串

    Bash Bourne Again SHell 是一种流行的 shell 脚本语言 尤其是在 Linux 和 Unix 世界中 shell 脚本中最常见的任务之一是操作字符串 包括从给定字符串中提取子字符串 在本文中 我们将探讨如何使用强大
  • 如何在 Fedora 34/33 上安装 Magento2

    Magento 是最好的企业级电子商务软件和解决方案 它由开放 灵活的下一代架构提供支持 使用 Magento 开发的应用程序将为用户提供最佳且引人入胜的购物体验 其性能优于其他可用的电子商务应用程序 Magento 2 是最新版本 该版本