This is an old revision of the document!
# Magento
## Magento版本介绍
Magento包含社区版(Magento Open Source)和企业版(Magento Commerce)两种版本,其中社区版免费开源。
## Magento安装
[Magento开发者文档](http://devdocs.magento.com)(包括安装、前后端开发等)
### Magento环境要求
详见[Magento 2.1 环境要求官方文档](http://devdocs.magento.com/guides/v2.1/install-gde/system-requirements-tech.html)
* 64位Linux操作系统(RedHat Enterprise Linux(RHEL), CentOS, Ubuntu, Debian等) * Web服务器(Apache2, nginx) * PHP及PHP扩展 * 数据库(MySQL等)
### Magento安装步骤
* [下载Magento Open Source](http://www.magento.com/download) * 上传到服务器(使用ftp或scp等) * 解压安装包到合适的目录(tar, gunzip, unar等) * 安装
使用浏览器打开`http://<magento_host_or_ip>/<magento_path>/setup`,例如`http://127.0.0.1/magento2ce/setup`,然后按照提示安装即可 Magento2.1向导安装一共6步,1. Readiness Check; 2. Add a Database; 3. Web Configuration; 4. Customize Your Store; 5. Create Admin Account; 6. Install
### Magento安装常见问题
#### setup页面无法正确显示
如果打开setup页面,没有显示magento的安装页面,而是纯文本内容,可能是apache没有启用php模块,参照[Apache PHP配置](apache2配置#apache2_php配置)
#### Readiness Check失败
* PHP Settings Check:You must have installed GD library with –with-jpeg-dir=DIR option.
Ubuntu下通过`sudo apt install php7.0-gd`并`sudo service apache2 restart`安装GP支持
* PHP Extensions Check: 11 missing PHP extensions.
Ubuntu下通过`sudo apt install php7.0-<module_name>`安装缺失的扩展(即extension)并重启apache2服务即可。 module名称基本与extension名称相同,但是部分module可能包含了多个extension,如果安装过程中发现php7.0-<module\_name>没有找到,那就先不管。其中dpo\_mysql对应的module是php7.0-mysql而不是php7.0-dpo\_mysql
* File Permission Check: 5 file permission not met
将magento根目录的owner设置为www-data即可,例如`sudo chown www-data:www-data /var/www/html/magento2ce -R`
#### Add a Database失败
提示:Database 'magento' does not exist or specified database server user does not have privileges to access this database.
需要在服务器上先进入mysql数据库,手动创建数据库
#### 安装成功后404错误(包括打开首页样式错误和admin页面404错误)
解决方案:启用Apache2的rewrite,详细操作如下(以Apache2.4配置为例):
* 启用rewrite模块`sudo a2enmod rewrite` * 修改Apache2站点配置(Ubuntu下通常是`/etc/apache2/sites-available/000-default.conf`),添加:
``` <Directory "/var/www/html"> AllowOverride <value from Apache site> </Directory> ```
* 重启Apache2`sudo service apache2 restart`
## Magento配置
### Magento cron job配置(TBD)