介绍
Magento是电子商务网站最受欢迎的内容管理系统。 它被小企业和大型企业公司使用,可以通过数千个扩展和主题来增强。 Magento使用MySQL数据库系统,PHP编程语言和Zend Framework的一部分。
在本教程中,我们将讨论如何在Ubuntu 14.04上使用Apache Web服务器安装Magento,包括一些常见的性能和安全配置。
先决条件
在开始使用本指南之前,需要先完成几个步骤。
由于处理Magento操作的需求,建议您在至少有2 GB RAM的VPS上安装Magento。 这将确保管理商店所涉及的所有软件都有足够的内存工作。
你将需要访问到具有非root用户sudo
权限。 如果你还没有这样做的是,你可以通过运行Ubuntu的14.04初始服务器设置向导来创建此帐户。
此外,您需要在您的VPS实例上安装一个LAMP(Linux,Apache,MySQL和PHP)。 如果你没有这些组件已经安装和配置,你可以使用这个指南,以了解如何在Ubuntu 14.04安装LAMP 。
完成这些步骤后,您可以作为非root用户连接到您的Ubuntu服务器,并继续进行Magento安装。
第1步 - 配置Apache和PHP
在我们下载并安装Magento之前,Apache和PHP需要配置为正确处理Magento的流量和计算任务,并且需要安装和激活一些附加模块。
Apache虚拟主机
首先,我们需要配置一个虚拟主机文件,以便Apache知道如何正确地管理我们的Magento站点。 我们可以用我们的文本编辑器创建一个新的虚拟主机文件/etc/apache2/sites-available/
。 在这个例子中,虚拟主机被称为magento
,但你可以将其命名为别的东西,如果你喜欢。
sudo nano /etc/apache2/sites-available/magento.conf
Magento的虚拟主机需求相当简单。 与开始<VirtualHost>
侦听来自端口80的所有流量,标准HTTP端口标记。 然后添加一个行告诉Apache哪里可以找到您的网站与文件DocumentRoot
指令:
<VirtualHost *:80>
DocumentRoot /var/www/html
</VirtualHost>
我们需要添加一些额外的参数为Magento正常工作。 里面的<Directory>
指向我们的文档根标签,我们会输入Apache的目录索引,符号链接支持,以及多语言支持的选项。 我们还将添加一行允许.htaccess
文件来覆盖Apache的设置,它提供单个文件夹的更细粒度的控制。
. . .
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
. . .
所有这些组件到位后,您的虚拟主机文件将如下所示:
<VirtualHost *:80>
DocumentRoot /var/www/html
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
</VirtualHost>
当您完成写入服务器块时,保存并关闭文件。 为了使与Apache的新网站,使用a2ensite
命令:
sudo a2ensite magento.conf
我们还要禁用Apache附带的默认虚拟主机,因为它将与我们的新虚拟主机冲突。 要禁用与Apache网站,使用a2dissite
命令:
sudo a2dissite 000-default.conf
PHP设置
接下来,我们需要改变Apache授予PHP进程的内存量。 Magento使用PHP几乎所有它做的,并需要一个体面的大量内存复杂的操作,如索引产品和类别。 默认情况下,PHP为Apache上运行的每个脚本分配最多128MB的内存。 我们应该把这个限制提高到一个合理的数量,以确保没有一个Magento的脚本用尽内存,这将导致脚本崩溃。
使用文本编辑器和root权限打开Apache的PHP配置文件:
sudo nano /etc/php5/apache2/php.ini
找到以下行,它声明每个PHP脚本的内存限制:
memory_limit = 128M
更改该行,以便将限制提高到512MB。 您商店的内存需求可能会更高,具体取决于目录中的产品数量和每天接收的访问者数量。 一些较大的存储需要将其内存限制设置为2GB或更多,但现在512MB应该足够了。
memory_limit = 512M
注意:一定要使用“M”的内存号的末尾。
完成此更改后,保存并关闭文件。 下次重新启动Apache时,内存限制更改将生效。
Magento需要几个PHP模块,除了PHP附带的。 我们可以直接从Ubuntu的默认存储库中获取这些更新我们的本地包索引:
sudo apt-get update
sudo apt-get install libcurl3 php5-curl php5-gd php5-mcrypt
这些扩展将允许Magento正确处理HTTP请求,图像缩略图和数据加密。 现在我们有了我们需要的所有包,我们可以启用Apache的URL重写支持和PHP的加密支持:
sudo a2enmod rewrite
sudo php5enmod mcrypt
一旦完成所有这些配置和扩展更改,就可以重新启动Apache服务器实例,以便应用更改:
sudo service apache2 restart
第2步 - 创建MySQL数据库和用户
Magento使用MySQL数据库来管理网站数据,如产品和订单信息。 我们已经安装并配置了MySQL,但是我们需要为Magento创建一个数据库和一个用户。
从登录MySQL root帐户开始:
mysql -u root -p
将提示您输入MySQL的root帐户密码,您在安装MySQL时设置该密码。 一旦提交正确的密码,您将获得一个MySQL命令提示符。
首先,我们将创建一个Magento可以写数据的数据库。 在这个例子中,该数据库将被称为magento
,但你可以将其命名为任何你喜欢的。
CREATE DATABASE magento;
注意:每个MySQL的语句必须以分号结束( ;
),因此请确保您包含了,如果你正在运行的任何问题。
接下来,我们将创建一个新的MySQL用户帐户,专门用于操作新数据库。 创建单一功能的数据库和帐户是一个好主意,因为它允许更好地控制权限和其他安全需求。
我要叫新帐户magento_user
并会为它分配一个密码, password
。 你应该肯定使用不同的用户名和密码,因为这些例子不是很安全。
CREATE USER magento_user@localhost IDENTIFIED BY 'password';
在这一点上,你有一个数据库和一个用户帐户,每个专门为Magento。 但是,用户对数据库没有访问权限。 我们需要通过授予我们对数据库的用户访问权限将这两个组件链接在一起:
GRANT ALL PRIVILEGES ON magento.* TO magento_user@localhost IDENTIFIED BY 'password';
现在用户可以访问数据库,我们需要刷新权限,以便MySQL了解我们最近做出的权限更改。 一旦完成,我们可以退出MySQL命令提示符。
FLUSH PRIVILEGES;
exit
您现在应该回到您的常规SSH命令提示符。
第3步 - 下载并设置Magento文件
我们现在准备下载并安装Magento。 要查看Magento的社区版的最新的稳定版本是,头部到社区下载页面 。 在此示例中,当前版本号为1.9.0.1,但您应该用该号码替换您可用的最新版本。 始终建议使用最新版本的Magento,因为新版本通常包括重要的安全更新以及新的和改进的功能。
使用wget
对Magento的存档文件下载到你的主目录:
cd ~
wget http://www.magentocommerce.com/downloads/assets/1.9.0.1/magento-1.9.0.1.tar.gz
我们可以提取归档文件与重建的Magento目录tar
:
tar xzvf magento-1.9.0.1.tar.gz
现在,您将有一个目录名为magento
在你的主目录。 我们需要将解压缩的文件移动到Apache的文档根目录,它可以提供给我们网站的访问者。 我们将使用rsync
那里转移我们的Magento的文件,因为rsync
将包括重要的隐藏文件类似.htaccess
。 一旦转让完成后,我们可以通过删除清理我们的home目录magento
文件夹和存档那里。
sudo rsync -avP ~/magento/. /var/www/html/
rm -rf ~/magento*
rsync
将安全的所有内容,从您解压文档根目录的目录复制/var/www/html/
。 现在我们需要将文件和文件夹的所有权分配给Apache的用户和组:
sudo chown -R www-data:www-data /var/www/html/
此更改将允许Apache创建和修改Magento文件。 我们现在准备通过Magento的基于浏览器的配置界面完成安装过程。
第4步 - 通过Web界面完成安装
要使用浏览器访问Web界面,请导航到您的服务器的域名或公共IP地址:
http://server_domain_name_or_IP/
如果以前的步骤已正确遵循,您将看到Magento的安装向导。 第一页将显示许可协议,您将需要同意前,你可以打继续 。
在下一页中,您可以更改语言区域设置,例如语言,时区和货币。 更改这些以最合适的地方你的产品正在出售的设置,然后点击继续 。
配置页面分为三个部分。 第一部分是您可以设置Magento如何连接到其MySQL数据库。 确保数据库类型设置为“MySQL的”和主机设置为“本地主机”。 然后,您需要填写数据库名称 , 用户名 , 密码和用户密码与您决定先前创建MySQL数据库和用户帐户时的设置。
在配置页面的下一部分,您可以在其中配置您的商店的URL,以及几个其他Apache控制的功能。 确保基本URL服务器的域名相匹配; 如果您尚未设置域名,则可以立即使用服务器的公共IP地址。 它的管理路径更改为比“管理员”不太明显,使其更困难的人找到你的管理面板是一个好主意。 你也应该考虑检查使用的Web服务器(Apache)重写使您的网站的网址,更友好的用户和搜索引擎。 支持此功能性,所需的Apache模块mod_rewrite
,已被启用,并且准备使用。
配置页面的最后一部分用于选择会话数据存储的方法。 Magento提供了两种保存用户会话数据的方法。 该文件系统的方法存储会话在服务器上的文件,并开始与最简单的方法。 数据库方法存储会话作为MySQL数据库的条目,非常适合跨多个服务器跨越Magento的安装。 现在,我们可以使用文件系统方法坚持下去,因为它通常会表现得更好开箱。
您选择的配置选项,并继续打后,你会移动到管理员帐户创建页面。 这是您将在哪里创建管理帐户,负责维护Magento商店。 确保用户名和密码都是安全的,很难猜到。 加密密钥字段应该,除非你是在从现有的Magento安装迁移数据留空。 如果将该字段留空,Magento的会生成一个新的加密密钥,当您单击继续 ,并会显示它为你的下一个页面上。 请确保将该加密密钥保存在安全的地方,以备日后需要迁移时使用。
一旦完成基于Web的配置,您的Magento安装就可以使用了。 通过访问您的服务器的域名或您的Web浏览器中的公共IP地址查看您的新店面:
http://server_domain_name_or_IP/
如果一切配置正确,您应该看到一个店面,看起来像这样:
您还可以访问您的新管理网站,方法是转到您之前设置的管理目录:
http://server_domain_name_or_IP/admin/
使用您的管理员用户名和密码登录,查看您的新信息中心:
结论
现在你有你的Magento商店,并运行,你准备开始建立你的项目目录,开始销售!
使用SSL证书加密您的网站流量的关键下一步。 下面是一个指南,帮助您开始: 如何从商业认证机构安装SSL证书 。