如何在Ubuntu 15.10上安装Magento与Nginx
Magento是基于PHP Zend Framework的电子商务网站的开源电子商务软件和内容管理系统。 它使用MySQL或MariaDB作为数据库后端。 Magento开发于2008年由Varien开始。
在本教程中,我将向您展示如何使用Nginx,PHP-FPM和MariaDB作为数据库安装Magento 2。 我将使用ubuntu 15.10(Wily Werewolf)作为安装的基础。 如果您还没有最小的服务器设置,请参阅本教程以获得正确的基本设置。
先决条件:
- Ubuntu 15.10 - 64位。
- 根特权。
第1步 - 安装Nginx
使用root帐户登录到您的Ubuntu服务器(例如通过SSH)并更新存储库。
sudo su
apt-get update
然后安装Nginx:
apt-get install nginx -y
通过检查端口来验证nginx是否已正确安装:
netstat -plntu | grep 80
第2步 - 安装和配置PHP-FPM
在这一步中,我们将在PHP-FPM模式下安装PHP 5.6。 另外我们将安装magento需要的以下PHP扩展。
- php-gd
- php-mhash
- php-mcrypt
- php-xsl
- 梨梨
- php-soap
使用apt命令安装软件包:
apt-get install php5-fpm php5-mhash php5-mcrypt php5-curl php5-cli php5-mysql php5-gd php5-xsl php5-json php5-intl php-pear php5-dev php5-common php-soap libcurl3 curl -y
我们必须通过在conf.d目录中创建一个符号链接来手动启用php5-mcrypt扩展。
cd /etc/php5/fpm/conf.d
sudo ln -s ../../mods-available/mcrypt.ini
cd /etc/php5/cli/conf.d
sudo ln -s ../../mods-available/mcrypt.ini
现在编辑php.ini文件为fpm和cli。
vim /etc/php5/fpm/php.ini
vim /etc/php5/cli/php.ini
并增加内存限制和php执行时间,并通过在文件末尾添加以下行来打开zlib压缩:
memory_limit = 512M
max_execution_time = 1800
zlib.output_compression = On
保存并退出。
重新启动PHP-FPM服务以应用配置更改:
systemctl restart php5-fpm
第3步 - 安装和配置MariaDB
我将使用MariaDB而不是MySQL。 使用apt命令安装MariaDB:
apt-get install mariadb-server mariadb-client -y
使用以下命令设置MariaDB root用户密码:
mysqladmin -u root password mypassword
然后使用root密码连接到MySQL shell(MariaDB shell开始使用MySQL命令),使用' magentouser @ '密码创建一个名为' magentodb '的数据库和一个用户' magentouser '。 请为服务器上的“magentouser”选择一个安全的密码,而不是我在这个例子中使用的 ' magentouser @ ' !
登录到MySQL shell:
mysql -u root -p
在MySQL shell中,运行以下命令:
create database magentodb;
create user magentouser@localhost identified by 'magentouser@';
grant all privileges on magentodb.* to magentouser@localhost identified by 'magentouser@';
flush privileges;
\q
创建和配置数据库。
第4步 - 安装和配置Magento 2
我们将在目录“/ var / www / magento2”中安装Magento。 对于Magento安装,我们需要PHPComposer。
安装phpComposer
转到根目录,使用curl下载Composer安装程序文件,并运行它来安装Composer者。
cd ~/
curl -sS https://getcomposer.org/installer | php
将文件'composer.phar'文件移动到服务器的bin目录,并将其重命名为composer,以便轻松执行:
mv composer.phar /usr/bin/composer
现在验证composer命令是否正常工作:
composer -v
- 下载并提取Magento 2
转到网络目录“/ var / www /”,并从它的Github资源库下载Magento,然后解压缩下载的tar.gz文件:
cd /var/www/
wget https://github.com/magento/magento2/archive/2.0.0.tar.gz
tar -xzvf 2.0.0.tar-gz
mv magento2-2.0.0/ magento2/
完成
- 配置Magento键
在Magento网站repo.magento.com上注册一个帐户。 该帐户需要使用Magento和MagentoComposer商店。 注册后,进入“ 我的帐户”>“开发人员>安全密钥 ”,然后生成密钥。
- 配置Github令牌
确保您已在github.com注册。 通过单击您的顶级配置文件生成GitHub访问令牌,转到“ 设置>个人访问令牌 ”,然后单击“生成新令牌”。
- 为Magento安装第三方组件
转到Magento 2安装目录“/ var / www / magento2”并运行composer命令:
cd /var/www/magento2/
composer install -v
您将被要求获得Magento身份验证,使用公钥作为用户名,密码为私钥。
然后,您将被要求输入GitHub令牌,粘贴并按'enter'继续第三方组件。
- 配置Nginx Virtualhost
Magento提供了一个现成的Nginx虚拟主机配置,因此我们只需将其包含在我们的配置中。
转到Nginx虚拟主机目录并创建名为magento的新文件:
cd /etc/nginx/sites-available/
vim magento
粘贴配置如下:
upstream fastcgi_backend { server unix:/var/run/php5-fpm.sock; } server { listen 80; server_name www.newmagento.com; set $MAGE_ROOT /var/www/magento2; set $MAGE_MODE developer; include /var/www/magento2/nginx.conf.sample; }
用您的商店使用的网站的域名替换www.newmagento.com。
保存并退出。
现在激活虚拟主机并重新启动Nginx:
ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
systemctl restart nginx
- 安装Magento
我们将在命令行上安装magento。 在Magento目录'/ var / www / magento2 /'中有二进制文件,名称为'magento',用于安装和管理magento。 运行命令:
bin/magento setup:install --backend-frontname="adminlogin" \
--key="biY8vdWx4w8KV5Q59380Fejy36l6ssUb" \
--db-host="localhost" \
--db-name="magentodb" \
--db-user="magentouser" \
--db-password="magentouser@" \
--language="en_US" \
--currency="USD" \
--timezone="America/New_York" \
--use-rewrites=1 \
--use-secure=0 \
--base-url="http://www.newmagento.com" \
--base-url-secure="https://www.newmagento.com" \
--admin-user=adminuser \
--admin-password=admin123@ \
--admin-email=admin@newmagento.com \
--admin-firstname=admin \
--admin-lastname=user \
--cleanup-database
backend-frontname =我们的magento网站的管理页面,我们使用' adminlogin '。
Key =我们的magento键,我们可以生成它,或者在http://randomkeygen.com/等上随机找到它。
Base-url =确保与虚拟主机配置相同。
在安装过程结束时,您应该看到以下行:
[SUCCESS]: Magento installation complete. [SUCCESS]: Magento Admin URI: /adminlogin
在我们测试Magento安装之前,确保web目录所有者是“ www-data ”,然后重新启动nginx。
cd /var/www/magento2/
chown -R www-data .
systemctl restart nginx
现在在浏览器中打开Magento域:
在我的情况下,名字是:www.newmagento.com 。
尝试登录Magento管理信息中心:
www.newmagento.com/adminlogin
注意 :
如果您收到有关Magento索引器和cronjob的错误,那么可以通过将以下cronjob添加到您的服务器来解决此问题:
crontab -u www-data -e
添加以下行:
*/1 * * * * php -c /etc/php5/cli/php.ini /var/www/magento2/bin/magento cron:run */1 * * * * php -c /etc/php5/cli/php.ini /var/www/magento2/update/cron.php */1 * * * * php -c /etc/php5/cli/php.ini /var/www/magento2/bin/magento setup:cron:run
保存并退出。
Ubuntu 15.10上安装了Nginx和PHP-FPM的Magento 2现已安装。
结论
Magento是基于PHP Zend Framework的开源电子商务平台。 它是一个复杂的电子商务软件,可帮助您完成在线业务。 Magento使用MVC(Model-View-Controller)架构和MySQL或MariaDB作为数据库。 Magento易于安装,我们可以使用Nginx或Apache Web服务器进行安装。 Magento已成为互联网上最受欢迎的电子商务软件之一,并被全球许多成功的商店网站使用。