Magento国内又被称为:麦进斗,被认为是全球范围内最实用、最完整的电子商务网站架构系统,它的可扩展性、灵活性、系统安全性和可靠性方面都处于领先地位,其版本1和2的安装方式对系统及其依赖软件有很苛刻的版本要求,本文就以选定的一个版本来做下安装演示。
Magento的运行需要LAMP/LNMP环境支持,本文以LAMP为例,安装过程分为四大步骤:1,2,3,4
0:OS:Centos6 Kernel:2.6.32-504.el6.x86_64
1:Web:Apache版本:2.4.34
2:应用:PHP版本:7.1.0
3:数据库:MySQL版本:5.6.40
4:Magento2:Magento版本:2-2.2.5
1:Web:Apache版本:2.4.34
1.1:配置系统参数
1.1.1:关闭防火墙
[root@localhost ~]# /etc/init.d/iptables stop
[root@localhost ~]# chkconfig iptables off
1.1.2:关闭selinux
[root@localhost ~]# setenforce 0
[root@localhost ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
1.2:安装编译依赖包文件
1.2.1:编译需要的软件包
yum -y install gcc gcc-c++ automake autoconf libtool make ncurses-devel expat-devel bzip2-devel libicu-devel readline-devel recode-devel libtidy-devel libxml2 libxml2-devel libmcrypt mhash mcrypt libmcrypt-devel mhash-devel gd-devel mcrypt-devel openssl openssl-devel libxslt libxslt-devel curl curl-devel pcre-devel epel-release libmcrypt-devel
1.2.2:安装apr (建议复制命令执行)
APR(Apache portable Run-time libraries,Apache可移植运行库)的目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。
cd /usr/local/src
wget http://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-1.6.3.tar.gz &&
tar zxf apr-1.6.3.tar.gz &&
cd apr-1.6.3 &&
./configure --prefix=/usr/local/apr &&
make &&
make install &&
cd ..
1.2.3安装apr-util (复制执行)
cd /usr/local/src
wget http://mirrors.shu.edu.cn/apache/apr/apr-util-1.6.1.tar.gz &&
tar zxf apr-util-1.6.1.tar.gz &&
cd apr-util-1.6.1 &&
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr &&
make &&
make install &&
cd ..
1.3:下载使用源码包文件编译、安装 (建议复制命令执行)
1.3.1:下载软件并编译
cd /usr/local/src
wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.34.tar.gz &&
tar -zxf httpd-2.4.34.tar.gz &&
cd httpd-2.4.34
编译选项:
./configure \
--prefix=/usr/local/apache \
--sysconfdir=/etc/httpd \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--enable-mods-shared=most \
--enable-mpms-shared=all \
--with-mpm=prefork
1.3.2:编译、安装
make && make install
1.4:配置自动启动脚本文件
#cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
修改/etc/init.d/httpd
vi /etc/init.d/httpd在第二行添加下面两行
#chkconfig: 35 79 80
#description: Apache
执行命令方式代替上面的手工操作: (建议复制命令执行)
sed -i "/Licensed to the Apache/i#chkconfig: 35 79 80" /etc/init.d/httpd
sed -i "/Licensed to the Apache/i#description: Apache" /etc/init.d/httpd
效果如下:
[root@localhost httpd-2.4.34]# head -n5 /etc/init.d/httpd
#!/bin/sh
#chkconfig: 35 79 80
#description: Apache
#Licensed to the Apache Software Foundation (ASF) under one or more
添加系统启动
[root@localhost httpd-2.4.34]# chkconfig httpd --add
[root@localhost httpd-2.4.34]# /etc/init.d/httpd start
1.5:访问 在浏览器地址栏中输入:http://192.168.1.20
2:应用:PHP版本:7.1.0
2.1:删除系统自带的php
查询有无之前安装的php,有的话直接删除
yum list installed |grep php
yum remove *php* -y
2.2:安装依赖包
yum install -y epel-release
yum install -y libmcrypt-devel
2.3:软件包下载:
cd /usr/local/src/
wget http://am1.php.net/distributions/php-7.1.0.tar.gz
解压:
tar -zxvf php-7.1.0.tar.gz &&
cd php-7.1.0
2.4:编译选项
./configure \
--prefix=/usr/local/php \
--sysconfdir=/etc/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/etc/php \
--with-curl \
--with-gd \
--enable-intl \
--enable-mbstring \
--with-mcrypt \
--with-mhash \
--with-openssl \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-libxml-dir \
--enable-soap \
--enable-xml \
--with-xsl \
--enable-zip \
--enable-fpm \
--with-zlib \
--with-bz2 \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--enable-mbstring \
--enable-sockets \
--with-iconv-dir \
--with-pcre-dir \
--with-pear \
--enable-session \
--enable-gd-native-ttf \
--with-freetype-dir \
--enable-gd-jis-conv \
--enable-inline-optimization \
--enable-shared \
--enable-bcmath \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-mbregex \
--enable-pcntl \
--with-xmlrpc \
--with-gettext \
--enable-exif \
--with-readline \
--with-recode \
--with-tidy
2.5:编译、安装
make && make install
2.6:编辑配置文件(注意目录位置)
拷贝安装目录下的文件
[root@localhost php-7.1.0]# cp php.ini-production /etc/php.ini
cd /etc/php
cp php-fpm.conf.default php-fpm.conf
cd php-fpm.d/
cp www.conf.default www.conf
cp /usr/local/php/bin/php /usr/bin/php
2.7:自启动配置
2.7.1:开启pid文件(默认php安装后是关闭的状态)
sed -i 's/;pid = run\/php-fpm.pid/pid = run\/php-fpm.pid/g' /etc/php/php-fpm.conf
2.7.2:查看php-fpm的启动文件路径
ls /usr/local/php/sbin/php-fpm
2.7.3:创建系统启动配置文件
vi /etc/init.d/php-fpm内容如下:
#----------shell---start------------
#!/bin/sh
#chkconfig: 35 69 42
#description: PHP
ARGV="$@"
ACMD="$1"
PHPD='/usr/local/php/sbin/php-fpm'
PIDFILE="/usr/local/php/var/run/php-fpm.pid"
case $ACMD in
start)
if [ -f $PIDFILE ];then
echo "php is running"
else
$PHPD
fi
;;
stop)
if [ -f $PIDFILE ];then
kill -QUIT `cat $PIDFILE`
fi
;;
restart)
$0 stop
$0 start
;;
*)
$PHPD "$@"
ERROR=$?
esac
exit $ERROR
#-------shell----end---------
2.7.4:添加可执行权限
chmod +x /etc/init.d/php-fpm
添加到系统启动
chkconfig php-fpm --add
启动php-fpm
service php-fpm start
2.8:修改apache的配置文件,启用对PHP的支持:
2.8.1:启用php的rewrite模块
编辑httpd.conf查找下面的行,去掉前面的#号
#LoadModule rewrite_module modules/mod_rewrite.so
执行命令方式: (建议复制命令执行)
sed -i '/#LoadModule rewrite_module modules\/mod_rewrite.so/s/^#//' /etc/httpd/httpd.conf
2.8.2:打开当前主机下面的地址重写功能
AllowOverride None修改成:AllowOverride All
执行命令方式代替上面的手工操作: (建议复制命令执行)
sed -i '/AllowOverride FileInfo AuthConfig Limit/,/AllowOverride/{/AllowOverride None/s/.*/ AllowOverride All/}' /etc/httpd/httpd.conf
2.8.3:启动对PHP的支持
修改Apache的配置文件httpd.conf中
DirectoryIndex index.html index.php` #添加index.php
执行命令方式代替上面的手工操作: (建议复制命令执行)
sed -i 's/DirectoryIndex index.html/ DirectoryIndex index.html index.php/g' /etc/httpd/httpd.conf
2.8.4:添加对php文件的支持,在httpd.conf文件中找到以下内容:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在上面内容下面添加如下内容:
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php
执行命令方式代替上面的手工操作: (建议复制命令执行)
sed -i "/AddType application\/x-gzip .gz .tgz/a\ AddType application/x-httpd-php .php" /etc/httpd/httpd.conf
sed -i "/AddType application\/x-gzip .gz .tgz/a\ AddType application/x-httpd-php-source .phps" /etc/httpd/httpd.conf
sed -i "/AddType application\/x-gzip .gz .tgz/a\ " /etc/httpd/httpd.conf
2.9:创建php测试页面
在网站根目录下创建index.php内容如下:
echo phpinfo();
?>
注:配置好php后需要重启下apache服务
/etc/init.d/httpd stop && /etc/init.d/httpd start
看到如下画面说明apache和php的安装成功了
3:数据库:MySQL:5.6.40
mysql采用yum的方法安装
3.1:检查系统是否安装其他版本的MYSQL数据
yum list installed|grep mysql
yum remove *mysql* -y
3.2:安装mysql官方的yum源
3.2.1:下载官方源
wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm &&
rpm -ivh mysql-community-release-el6-5.noarch.rpm
3.2.2:示已配置的mysql仓库
yum repolist all | grep mysql
3.2.3:安装MYSQL数据库
yum install mysql-community-server -y
是否设置开机启动请选择配置如下:
chkconfig --list | grep mysqld
chkconfig mysqld on
3.3:启动mysql
/etc/init.d/mysqld start
3.4:创建安装magento的数据库
mysql> create database magento;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| magento |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)
4-1:Magento2:Magento:2-2.2.5
(安装没有demo的样例)
4.1:下载软件包:(下载到web服务器的root目录中)
cd /usr/local/apache/htdocs
wget https://download.magentochina.org/magento/2/magento2-2.2.5.zip
4.2:解压:
unzip magento2-2.2.5.zip
4.3:创建运行magento的用户
useradd magento && echo centos|passwd --stdin magento
4.4:安装composer
Composer 是 PHP5以上 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。使用Composer安装Magento及其依赖包,是我们推荐的方式.
运行如下命令将安装composer到本机
curl -sS https://getcomposer.org/installer | php
将Composer添加至全局
mv composer.phar /usr/local/bin/composer
4.5:设置magento目录的权限: (注:权限设置在安全上需要再加强,本次只为安装)
让所有者为magento
chown magento.magento magento2-2.2.5 -R
让文件有可写的权限
cd magento2-2.2.5
chmod +w * -R
4.6:切换到magento用户进行安装
[root@localhost ~]# su - magento
[magento@localhost ~]$ cd /usr/local/apache/htdocs/magento2-2.2.5
[magento@localhost magento2-2.2.5]$ composer install
注:在这里如果有报错要及时修复(按照咱们上面的步骤应该不会有错哈)这里需要等一会
4.7:切换回root用户,切换到站点根目录操作
修改权限设置:
cd /usr/local/apache/htdocs/magento2-2.2.5/
find . -type f -exec chmod 644 {} \; &&
find . -type d -exec chmod 757 -R {} \; &&
find ./var -type d -exec chmod 757 {} \; &&
find ./pub/media -type d -exec chmod 757 {} \; &&
find ./pub/static -type d -exec chmod 757 {} \; &&
find ./app/etc -exec chmod 757 {} \;
4.8:打开浏览器在地址栏里输入对应的URL开始安装
http://192.168.1.20/magento2-2.2.5
检查一切正常
配置数据库连接信息
自定义后台管理地址
设置时区、货币、及语言
配置管后台理员账户
大胆的开始安装吧
安装到最后一步,成功了!
后台管理登录页面
后台页面
前台页面
4-2:Magento2:
(安装有演示数据的Magento)
4-2.1:下载对应的版本的Magento
下载地址:
A:官网下载(需要登录)
https://magento.com/tech-resources/download
B:官方github下载 (文件版本为:Version 2.2.5)
https://codeload.github.com/magento-2/magento-2-community-sample-data/tar.gz/master
文件下载后存放在网站的root目录下:(212MB,文件有点大需要等一会)
cd /usr/local/apache/htdocs
wget https://codeload.github.com/magento-2/magento-2-community-sample-data/tar.gz/master
4-2.2:解压并修改文件名:
下完后会有一个文件名为:master的压缩文件
file master
master: gzip compressed data, from Unix
解压并改名:
tar -zxvf master &&
mv magento-2-community-sample-data-master magento2-sample
4-2.3:配置权限:(注:权限设置在安全上需要再加强,本次只为安装)
chown magento.magento magento2-sample -R &&
cd magento2-sample &&
chmod 755 * -R &&
chmod o+w * -R
cd ..
4-2.4:数据库要先创建好
mysql> create database magento_sample;
Query OK, 1 row affected (0.05 sec)
4-2.5:安装过程和无sample的一样,这里不再重复,注意:这里不需要composer install了
然后打开浏览器访问地址:http://192.168.1.20/magento2-sample 会自动跳转到安装界面
安装完成看效果:
查看管理后台
查看前台页面
查看发布的商品
选定要购买的商品
放大图片查看Model效果,(喜欢我就放大了看哈)
5:汉化
把系统汉化并不是必须的,需要的话请参考下面的操作
5.1:下载Magento2的汉化包文件:http://down.51cto.com/data/2449857
5.2:解压后上传到magento存放语言包的目录中,(请根据你自己的目录存放)
解压的的文件名为:zh_Hans_CN.csv
/usr/local/apache/htdocs/magento2-2.2.5/app/i18n/Magento/zh_Hans_CN
复制文件到指定目录
cp zh_Hans_CN.csv app/i18n/Magento/zh_Hans_CN/
在magento根目录下运行命令
bin/magento setup:static-content:deploy zh_Hans_CN -f
完成之后重新登录下管理后台系统进行相应的设置
小结:
magento版本1和2在安装上有很大的不同,版本2使用composer是官方推荐的方法,不管是哪个版本都对系统、LAMP/LNMP环境各软件的版本要求很严格,具体版本的差异及学习资料请参考:
官方站点:https://magento.com/
官方配置向导:https://devdocs.magento.com/guides/v2.2/config-guide/bk-config-guide.html
中文文档:https://doc.magentochina.org/guides/v2.1/config-guide/bk-config-guide.html
中文社区:https://www.magentochina.org/
中文论坛:https://www.magentochina.org/bbs/
中文论坛:http://bbs.mallol.cn/
钥匙先生:http://www.hellokeykey.com/magento-summary/
360magento:http://www.360magento.com/blog/ce-vs-ee/
牛人们的博客:https://blog.csdn.net/aislj/article/details/80858436
学习视频下载:https://share.weiyun.com/2c48886ad4a00da7353dfac9ffa38cc4 (密码:Ev2b)
--------------------------------The End---------------------------
转载于:https://blog.51cto.com/lifeng/2150701