Magento 2.0 是一个非常古老的版本(发布于 2025 年),它已经不再安全,也没有官方支持,并且存在大量已知的 Bug 和性能问题。强烈建议您不要在生产环境中使用 Magento 2.0。

magento 2.0 安装教程
(图片来源网络,侵删)

如果您学习或研究的目的需要安装它,请务必在隔离的测试环境(如本地虚拟机)中进行。


第一部分:环境准备(这是最关键的一步)

Magento 2 对服务器环境的要求非常严格,在安装 Magento 2.0 之前,请确保您的服务器满足以下最低要求。

系统要求

  • 操作系统: Linux (推荐 CentOS, Ubuntu)
  • Web Server: Apache 2.4 (推荐) 或 Nginx 1.x
  • 数据库: MySQL 5.6 或 MariaDB 5.5
  • PHP: PHP 5.6 或 PHP 7.0 (Magento 2.0 最高支持到 PHP 7.0)

PHP 扩展和设置

您必须安装以下 PHP 扩展,在终端中运行以下命令来检查和安装它们(以 Ubuntu/Debian 为例):

# 更新包列表
sudo apt-get update
# 安装必要的 PHP 扩展
sudo apt-get install php5.6 php5.6-cli php5.6-common php5.6-mysql php5.6-mcrypt php5.6-gd php5.6-curl php5.6-xsl php5.6-intl php5.6-mbstring php5.6-zip php5.6-bcmath

注意: 如果您使用 PHP 7.0,请将命令中的 php5.6 替换为 php7.0

magento 2.0 安装教程
(图片来源网络,侵删)

配置 PHP 设置 (php.ini)

编辑您的 PHP 配置文件 php.ini,通常位于 /etc/php/5.6/apache2/php.ini/etc/php/5.6/cli/php.ini

确保以下设置满足或超过 Magento 的最低要求:

memory_limit = 2G  ; 推荐至少 2G,安装过程很耗内存
max_execution_time = 18000
max_input_time = 18000
max_input_vars = 10000
realpath_cache_size = 16M
realpath_cache_ttl = 7200

修改后,需要重启 Apache 或 PHP-FPM 服务使配置生效。

# 对于 Apache
sudo systemctl restart apache2
# 或者对于 PHP-FPM
sudo systemctl restart php5.6-fpm

配置 Web 服务器

以 Apache 为例,您需要启用 mod_rewrite 模块。

sudo a2enmod rewrite
sudo systemctl restart apache2

创建数据库和用户

登录到您的 MySQL/MariaDB 控制台:

mysql -u root -p

然后执行以下 SQL 语句,创建一个专门用于 Magento 的数据库和用户。

CREATE DATABASE magento2_db CHARACTER SET utf8;
CREATE USER 'magento_user'@'localhost' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON magento2_db.* TO 'magento_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

请将 your_strong_password 替换为一个安全的密码。


第二部分:下载 Magento 2.0

获取 Composer

Magento 2.0 使用 Composer 作为包管理器,如果您的系统没有安装 Composer,请先安装它。

# 下载 Composer 安装脚本
curl -sS https://getcomposer.org/installer | php
# 将 Composer 移动到全局路径
sudo mv composer.phar /usr/local/bin/composer

使用 Composer 下载 Magento 2.0

我们将使用 Composer 来克隆 Magento 2.0 的项目代码,创建一个目录用于存放 Magento 项目,然后进入该目录。

sudo mkdir -p /var/www/magento2
sudo chown -R $USER:$USER /var/www/magento2
cd /var/www/magento2

注意: 我们将项目放在 /var/www/magento2,这是 Web 服务器的默认根目录之一。

使用 Composer 创建一个 Magento 项目,这个命令会下载 Magento 2.0 的所有核心代码和依赖项。

# --no-dev 参数可以跳过开发依赖,节省空间和时间
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition:2.0.16 .
  • magento/project-community-edition:2.0.16:我们指定了版本号 0.16,这是 2.0 系列的一个稳定版本,如果您不指定版本,Composer 会尝试安装最新的 2.x 版本(这会导致安装失败,因为环境不匹配)。
  • 表示将项目下载到当前目录。

安装过程可能需要一些时间,因为它需要下载大量文件。


第三部分:安装 Magento

设置文件权限

Magento 需要对某些目录和文件进行写入操作,我们需要设置正确的所有者和权限。

# 设置正确的文件所有者
sudo chown -R www-data:www-data /var/www/magento2
# 设置文件权限
sudo find /var/www/magento2 -type f -exec chmod 644 {} \;
sudo find /var/www/magento2 -type d -exec chmod 755 {} \;
# 设置 var 和 generated 目录的权限
sudo chmod -R 777 /var/www/magento2/var
sudo chmod -R 777 /var/www/magento2/generated
  • www-data 是 Apache/Nginx 在大多数 Linux 发行版中使用的默认用户,如果您的系统使用其他用户(如 nginxapache),请相应更改。

运行安装向导

您可以通过浏览器访问您的网站来启动安装向导,假设您的服务器 IP 是 168.1.100,请在浏览器中输入:

http://192.168.1.100/

您应该会看到 Magento 的安装欢迎页面。

按照向导的步骤操作:

  1. 阅读并接受协议:勾选 "I agree to the terms and conditions",然后点击 "Agree and Continue"。
  2. 填写数据库信息
    • Database Host: localhost
    • Database Name: magento2_db (您之前创建的数据库名)
    • Database User: magento_user (您之前创建的用户名)
    • Database Password: your_strong_password (您设置的密码)
  3. 填写自定义前缀:可以留空,或者输入一个自定义的表前缀以避免冲突。
  4. 创建 Admin Account
    • Username: 您的管理员用户名
    • Password: 您的管理员密码
    • Email: 您的管理员邮箱
    • First Name / Last Name: 您的姓名
  5. 配置商店
    • Default Currency: 选择默认货币 (如 CNY)
    • Default Timezone: 选择您所在的时区 (如 Asia/Shanghai)
    • Default Language: 选择默认语言 (如 Chinese (Simplified))
    • Store Name: 输入您的商店名称
    • Admin URI: 设置一个管理后台的路径,myadmin,这可以提高安全性,因为别人无法轻易猜测到 /admin
  6. 安装:点击 "Install Now" 按钮。

安装过程会自动完成数据库的创建和配置,完成后,浏览器会跳转到您的 Magento 商店首页。


第四部分:安装后配置

登录管理后台

访问您刚才设置的管理后台路径:

http://192.168.1.100/myadmin/

使用您在第 3 步中创建的管理员账户登录。

清理安装文件(非常重要!)

出于安全考虑,安装完成后必须删除 setupdev 目录。

cd /var/www/magento2
sudo rm -rf setup dev

设置 Cron 任务

Magento 依赖于 Cron 任务来执行许多后台任务,如索引更新、 newsletters 发送等。

登录到您的服务器,为您的 Magento 用户创建一个 Cron 任务。

crontab -e

在文件末尾添加以下内容,请将 /var/www/magento2 替换为您 Magento 的实际安装路径。

# Magento cron job
* * * * * /usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log

保存并退出文件,这会每分钟运行一次 Magento 的 Cron 脚本。


常见问题排查

  • 问题: There has been an error processing your request
    • 解决: 检查 var/log 目录下的日志文件,通常会找到具体的错误信息,常见原因包括 PHP 内存不足、文件权限不正确、数据库连接失败等。
  • 问题: Composer 安装失败,提示认证错误。
    • 解决: 您需要先获取您的 Magento 认证密钥,访问 Magento Marketplace,登录您的账户,在 "My Account" -> "My Access Keys" 下可以找到 Public Key 和 Private Key,然后运行:
      composer config repo.magento.com composer-api-key <your_private_key>

      或者,您可以在首次运行 composer 命令时,它会提示您输入并保存这些密钥。

  • 问题: 页面显示空白或 500 错误。
    • 解决: 检查 Apache/Nginx 的错误日志 (/var/log/apache2/error.log),以及 PHP 的错误日志 (/var/log/php5.6/error.log),最常见的原因是 php.ini 中的 memory_limit 设置太低。