如何在 Debian 11 上安装 Magento

在本教程中,我们将向您展示如何在 Debian 11 上安装 Magento。对于那些不知道的人,Magento 是一个基于 PHP 和 MariaDB 的免费开源电子商务平台,已被数百万小型企业用于在线销售和管理他们的产品。 Magento 具有丰富的功能,包括网站管理、搜索引擎优化、订单管理、客户服务工具、营销工具、结帐系统以及支付和运输系统。

本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo‘ 到命令以获取 root 权限。 我将向您展示在 Debian 11 (Bullseye) 上逐步安装 Magento CMS。

在 Debian 11 Bullseye 上安装 Magento

第 1 步。在我们安装任何软件之前,重要的是通过运行以下命令确保您的系统是最新的 apt 终端中的命令:

sudo apt update sudo apt upgrade sudo apt install apt-transport-https ca-certificates gnupg2

步骤 2. 安装 Composer。

Composer 的安装相当简单直接,现在运行以下命令:

curl -sS https://getcomposer.org/installer -o composer-setup.php sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

检查作曲家版本:

composer -V

步骤 3. 安装 Elasticsearch。

Elasticsearch 在标准 Debian 11 存储库中不可用,现在我们将 Elasticsearch APT 存储库添加到您的系统:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'

之后,使用安装 Elasticsearch 包 apt 以下命令:

sudo apt update sudo apt install elasticsearch

启动并启用 Elasticsearch 服务:

sudo systemctl enable elasticsearch.service --now

要验证和检查 Elasticsearch 是否正在运行,我们可以执行以下命令:

curl -X GET "localhost:9200"

要查看 Elasticsearch 在您的系统上记录的系统消息,请键入以下命令:

sudo journalctl -u elasticsearch

步骤 4. 安装 LAMP 堆栈。

需要 Debian 11 LAMP 服务器。 如果您没有安装 LAMP,请阅读我们之前的教程以在 Debian 11 上安装 LAMP 服务器。

步骤 5. 配置 MariaDB。

默认情况下,MariaDB 未加固。 您可以使用 mysql_secure_installation 脚本。 您应该仔细阅读以下每个步骤,这些步骤将设置 root 密码、删除匿名用户、禁止远程 root 登录、删除测试数据库和访问安全 MariaDB:

mysql_secure_installation

像这样配置它:

- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y

接下来,我们需要登录 MariaDB 控制台并为 Magento 创建一个数据库。 运行以下命令:

mysql -u root -p

这将提示您输入密码,因此输入您的 MariaDB 根密码并点击 Enter. 登录到数据库服务器后,您需要为 Magento 安装创建一个数据库:

mysql> CREATE DATABASE magento_db; mysql> CREATE USER 'magento'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your-stong-passwd'; mysql> GRANT ALL PRIVILEGES ON magentodb.* TO 'magento'@'localhost'; mysql> FLUSH PRIVILEGES; mysql> q

步骤 6. 配置 Apache.

现在我们创建一个新的 VirtualHost 来更好地管理 Joomla:

nano /etc/apache2/sites-available/magento.conf

添加以下文件:

<VirtualHost *:80>      ServerAdmin [email protected]_domain.com       DocumentRoot /opt/magento2      ServerName your-domain.com       <Directory /opt/magento2>           Options FollowSymlinks           AllowOverride All           Require all granted      </Directory>       ErrorLog ${APACHE_LOG_DIR}/your-domain.com_error.log      CustomLog ${APACHE_LOG_DIR}/your-domain.com_access.log combined  </VirtualHost>

Save 和 close,然后重新启动 Apache 以便发生更改:

sudo a2ensite magento.conf sudo a2enmod rewrite sudo systemctl restart apache2

步骤 7. 在 Debian 11 上安装 Magento。

首先,我们在 magento.com 网站上创建一个帐户并导航到 https://marketplace.magento.com/customer/accessKeys/ 创建访问密钥:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.3 /opt/magento2

您将被要求输入您的用户名和密码:

Username: YOUR_PUBLIC_KEY Password: YOUR_PRIVATE_KEY

之后,通过运行以下命令开始安装:

cd /opt/magento2

在运行安装之前,您需要编辑域名、电子邮件地址和 admin 密码:

bin/magento setup:install  --base-url=https://your-domain.com  --db-host=localhost  --db-name=magento_db  --db-user=magento  --db-password=magento  --admin-firstname=admin  --admin-lastname=admin  [email protected]  --admin-user=admin  --admin-password=ngadimin123  --language=en_US  --currency=USD  --timezone=Asia/Jakarta  --use-rewrites=1

请耐心等待安装过程,直到完成,您应该会看到以下输出:

[SUCCESS]: Magento installation complete. [SUCCESS]: Magento Admin URI: /admin_1iwnbd

我们将需要更改一些文件夹权限:

sudo chown -R www.data. /opt/magento2

接下来,使用以下命令禁用双重身份验证:

sudo -u www-data bin/magento module:disable Magento_TwoFactorAuth sudo -u www-data bin/magento cache:flush

步骤 8. 配置 Cron 作业。

Magento 要求其 cron 作业运行以自动化其重要的系统功能。 现在我们创建以下 cron 作业:

sudo -u www-data bin/magento cron:install

步骤 9. 安装 SSL 证书。

在此步骤中,我们将安装 SSL (TLS) 证书。 我们将使用适用于所有浏览器和 CertBot 应用程序的免费 Let’s Encrypt 证书来安装证书并保持更新:

sudo apt install certbot python-certbot-apache

接下来,运行 certbot 将下载证书并创建 Apache 使用证书的配置:

sudo certbot --apache

然后将提示您输入证书的电子邮件地址。 输入后,您必须同意 T&C 并决定是否要与电子前沿基金会共享您的电子邮件地址。 最后一步是可选的。 成功后重新加载 Apache 再次加载所有新配置:

sudo systemctl reload apache2

步骤 10. 配置防火墙。

现在我们打开端口 80 和 443 以允许 Apache 服务器流量。 我们将使用以下命令执行此操作:

ufw allow 80/tcp ufw allow 443/tcp ufw reload

步骤 11. 访问 Magento Web 界面。

成功安装后,打开您的网络浏览器并使用 URL 访问 Magento 网络界面 https://your-domian.com. 您将被重定向到以下页面:

恭喜! 您已成功安装 Magento。 感谢您使用本教程在 Debian 11 Bullseye 上安装最新版本的 Magento 电子商务平台。 如需更多帮助或有用信息,我们建议您查看 Magento 官方网站.