E-Commerce · 3 min read · Oct 25, 2025
Решение электронной коммерции Magento на Debian Etch
Решение электронной коммерции Magento на Debian Etch
Версия 1.0
Автор: Оливер Мейер
Этот документ описывает, как установить Magento на Debian Etch. Полученная система предоставляет профессиональное решение электронной коммерции с открытым исходным кодом и множеством функций. Обратите внимание, что Magento в настоящее время находится в предварительном релизе и не рекомендуется для использования в производственных средах. Но, по крайней мере, стоит на него взглянуть.
Этот howto является практическим руководством без каких-либо гарантий - он не охватывает теоретические основы. Существует много способов настроить такую систему - это тот способ, который я выбрал.
1 Подготовка
Настройте стандартную систему Debian Etch и обновите ее. Я использовал следующую конфигурацию для прикрепленной виртуальной машины:
Имя хоста: server1.example.com
IP: 192.168.0.100
Маска подсети: 255.255.255.0
Шлюз: 192.168.0.2
Pri.DNS: 192.168.0.2
2 Необходимые пакеты
Сначала установим некоторые необходимые пакеты, чтобы подготовить систему для Magento.
apt-get install apache2 apache2-prefork-dev mysql-server-5.0 php5 php5-dev php5-mysql php5-mcrypt php5-mhash php5-curl php-pear re2c make3 APC Cache
Рекомендуется использовать APC в качестве кэша байт-кода (другие кэши байт-кода в настоящее время не поддерживаются). Установите его через:
pecl install apcВыберите “ yes “, когда вас спросят, хотите ли вы использовать apxs для установки флагов компиляции. После этого нам нужно добавить APC в php.ini - перед этим вам следует сделать резервную копию.
cp /etc/php5/apache2/php.ini /etc/php5/apache2/php.ini.origvi /etc/php5/apache2/php.iniДобавьте следующую строку:
extension=apc.soТеперь вам нужно перезапустить apache.
/etc/init.d/apache2 restart4 Подготовка MySQL
На этом этапе мы подготавливаем базу данных для Magento.
4.1 Пароль root
Сначала нам нужно назначить пароль для пользователя SQL root.
mysqladmin -u root password %sql_root_password%Примечание: я использовал пароль howtoforge в прикрепленной виртуальной машине.
4.2 База данных Magento
Далее мы создаем базу данных для Magento.
mysqladmin -u root -p create magento
%sql_root_password%4.3 Пользователь базы данных
Теперь мы создаем нового пользователя для базы данных Magento.
mysql -u root -p
%sql_root_password%GRANT CREATE, ALTER, INDEX, DROP, CREATE TEMPORARY TABLES, SELECT, INSERT, UPDATE, DELETE ON magento.* TO 'magento_admin'@'localhost' IDENTIFIED BY '%magento_admin_password%';
GRANT CREATE, ALTER, INDEX, DROP, CREATE TEMPORARY TABLES, SELECT, INSERT, UPDATE, DELETE ON magento.* TO 'magento_admin'@'localhost.localdomain' IDENTIFIED BY '%magento_admin_password%';
FLUSH PRIVILEGES;Примечание: я использовал пароль secret в прикрепленной виртуальной машине.
quit;5 Получить Magento
Время загрузить и распаковать Magento. Кроме того, нам нужно изменить права.
cd /var/www/
wget http://www.magentocommerce.com/downloads/assets/0.6.14100/light/magento-0.6.14100.tar.gz
tar xvfz magento-0.6.14100.tar.gz
rm -f magento-0.6.14100.tar.gz
chown -R root:root magento/
chown root:www-data magento/var/.htaccess
chown -R root:www-data magento/app/etc/
chown -R root:www-data magento/var/
chown -R root:www-data magento/media/6 SSL сертификат
Мы создаем SSL сертификат для SSL-vhost. Обратите внимание, что этот самоподписанный сертификат предназначен только для тестирования.
mkdir /etc/apache2/ssl/
cd /etc/apache2/ssl/
openssl req -new > server.cert.csr
openssl rsa -in privkey.pem -out server.cert.key
openssl x509 -in server.cert.csr -out server.cert.crt -req -signkey server.cert.key -days 3657 VHosts Magento
Мы создадим два vhosts - один для http-соединений и один для https-соединений.
7.1 HTTP
vi /etc/apache2/sites-available/magentoОн должен выглядеть так:
NameVirtualHost 192.168.0.100:80
ServerName www.example.com
ServerAdmin [email protected]
DocumentRoot /var/www/magento/
AllowOverride All
ErrorLog /var/log/apache2/magento_error.log
CustomLog /var/log/apache2/magento_access.log combined
LogLevel warn
7.2 HTTPS
vi /etc/apache2/sites-available/magento_sslОн должен выглядеть так:
NameVirtualHost 192.168.0.100:443
ServerName www.example.com
ServerAdmin [email protected]
DocumentRoot /var/www/magento/
SSLEngine on
SSLCertificateKeyFile ssl/server.cert.key
SSLCertificateFile ssl/server.cert.crt
SSLProtocol all
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
AllowOverride All
SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128
ErrorLog /var/log/apache2/magento_error.log
CustomLog /var/log/apache2/magento_access.log combined
LogLevel warn
Добавьте порт HTTPS в конфигурацию apache.
vi /etc/apache2/ports.confДобавьте следующую строку:
Listen 4437.3 Модули и сайты
После этого мы включаем новые сайты, …
a2ensite magento
a2ensite magento_ssl… модуль переписывания …
a2enmod rewrite… и модуль ssl.
a2enmod sslТеперь нам нужно перезапустить apache.
/etc/init.d/apache2 restartGet new posts in your inbox
No spam. Unsubscribe anytime.