Cách cài đặt và cấu hình Magento trên Ubuntu 14.04
Magento là hệ thống quản lý nội dung phổ biến nhất cho các trang web thương mại điện tử. Nó được sử dụng bởi các doanh nghiệp nhỏ và các công ty doanh nghiệp lớn và có thể được nâng cao bởi hàng nghìn tiện ích mở rộng và chủ đề. Magento sử dụng hệ thống database MySQL, ngôn ngữ lập trình PHP và các phần của Zend Framework.Trong hướng dẫn này, ta sẽ xem xét cách cài đặt Magento với web server Apache trên Ubuntu 14.04, bao gồm một số cấu hình hiệu suất và bảo mật phổ biến trong quá trình thực hiện.
Yêu cầu
Trước khi bạn bắt đầu với hướng dẫn này, có một số bước cần được hoàn thành trước.
Do nhu cầu xử lý các hoạt động của Magento, bạn nên cài đặt Magento trên VPS có RAM ít nhất 2 GB. Điều này sẽ đảm bảo tất cả các phần mềm liên quan đến quản lý cửa hàng sẽ có đủ bộ nhớ để hoạt động.
Bạn cần quyền truy cập vào user không phải root có quyền sudo
. Nếu bạn chưa làm điều này, bạn có thể chạy qua hướng dẫn cài đặt server ban đầu Ubuntu 14.04 để tạo account này.
Ngoài ra, bạn cần phải cài đặt LAMP (Linux, Apache, MySQL và PHP) trên version VPS của bạn . Nếu bạn chưa cài đặt và cấu hình các thành phần này, bạn có thể sử dụng hướng dẫn này để tìm hiểu cách cài đặt LAMP trên Ubuntu 14.04 .
Khi hoàn tất các bước này, bạn có thể kết nối với server Ubuntu của bạn với quyền là user không phải root và tiếp tục cài đặt Magento của bạn .
Bước 1 - Cấu hình Apache và PHP
Trước khi ta download và cài đặt Magento, Apache và PHP cần được cấu hình để xử lý đúng các việc tính toán và lưu lượng của Magento, đồng thời, một số module bổ sung cần được cài đặt và kích hoạt.
Server ảo Apache
Đầu tiên, ta cần cấu hình file server ảo để Apache biết cách quản lý trang Magento của ta một cách chính xác. Ta có thể sử dụng editor của bạn để tạo một file server ảo mới trong /etc/apache2/sites-available/
. Trong ví dụ này, server ảo được gọi là magento
, nhưng bạn có thể đặt tên khác nếu muốn.
sudo nano /etc/apache2/sites-available/magento.conf
Nhu cầu server ảo của Magento khá đơn giản. Bắt đầu bằng <VirtualHost>
lắng nghe tất cả lưu lượng truy cập từ cổng 80, cổng HTTP tiêu chuẩn. Sau đó, thêm một dòng cho Apache biết nơi tìm các file trên trang web bằng lệnh DocumentRoot
:
<VirtualHost *:80> DocumentRoot /var/www/html </VirtualHost>
Ta cần thêm một số thông số bổ sung để Magento hoạt động bình thường. Bên trong <Directory>
trỏ đến root tài liệu của ta , ta sẽ nhập các tùy chọn để lập index folder , hỗ trợ softlink và hỗ trợ đa ngôn ngữ của Apache. Ta cũng sẽ thêm một dòng cho phép .htaccess
overrides cài đặt Apache, cung cấp khả năng kiểm soát chi tiết hơn đối với các folder riêng lẻ.
. . . <Directory /var/www/html/> Options Indexes FollowSymLinks MultiViews AllowOverride All </Directory> . . .
Với tất cả các thành phần này, file server ảo của bạn sẽ trông giống như sau:
<VirtualHost *:80> DocumentRoot /var/www/html <Directory /var/www/html/> Options Indexes FollowSymLinks MultiViews AllowOverride All </Directory> </VirtualHost>
Khi bạn ghi xong khối server , hãy lưu file . Để kích hoạt trang web mới với Apache, hãy sử dụng lệnh a2ensite
:
sudo a2ensite magento.conf
Ta cũng muốn vô hiệu hóa server ảo mặc định đi kèm với Apache, vì nó sẽ xung đột với server ảo mới của ta . Để vô hiệu hóa một trang web với Apache, hãy sử dụng lệnh a2dissite
:
sudo a2dissite 000-default.conf
Cài đặt PHP
Tiếp theo, ta cần thay đổi dung lượng bộ nhớ mà Apache cấp cho các tiến trình PHP. Magento sử dụng PHP cho hầu hết mọi thứ nó làm và cần một lượng bộ nhớ phù hợp cho các hoạt động phức tạp như lập index sản phẩm và danh mục. Theo mặc định, PHP cấp phát tối đa 128MB bộ nhớ cho mỗi tập lệnh chạy trên Apache. Ta nên tăng giới hạn đó lên một lượng hợp lý đảm bảo rằng không có tập lệnh nào trong số các tập lệnh của Magento hết bộ nhớ, điều này có thể khiến tập lệnh bị hỏng.
Mở file cấu hình PHP của Apache bằng editor và quyền root của bạn:
sudo nano /etc/php5/apache2/php.ini
Tìm dòng sau, dòng này khai báo giới hạn bộ nhớ cho mỗi tập lệnh PHP:
memory_limit = 128M
Thay đổi dòng đó để giới hạn được nâng lên 512MB. Nhu cầu bộ nhớ của cửa hàng bạn có thể cao hơn tùy thuộc vào số lượng sản phẩm trong danh mục của bạn và lượng khách mà bạn nhận được hàng ngày. Một số cửa hàng lớn hơn cần đặt giới hạn bộ nhớ của họ thành 2GB trở lên, nhưng 512MB hiện tại là đủ.
memory_limit = 512M
Lưu ý: Đảm bảo sử dụng “M” ở cuối số bộ nhớ.
Khi bạn thực hiện xong thay đổi này, hãy lưu file . Lần sau khi bạn khởi động lại Apache, thay đổi giới hạn bộ nhớ sẽ có hiệu lực.
Magento cần một vài module PHP ngoài những module đi kèm với PHP. Ta có thể lấy những thứ này trực tiếp từ repository mặc định của Ubuntu sau khi ta cập nhật index gói local của bạn :
sudo apt-get update sudo apt-get install libcurl3 php5-curl php5-gd php5-mcrypt
Các tiện ích mở rộng này sẽ cho phép Magento xử lý đúng các yêu cầu HTTP, hình thu nhỏ hình ảnh và mã hóa dữ liệu. Bây giờ ta có tất cả các gói mà ta cần, ta có thể bật hỗ trợ ghi lại URL cho Apache và hỗ trợ mã hóa cho PHP:
sudo a2enmod rewrite sudo php5enmod mcrypt
Khi tất cả các thay đổi cấu hình và tiện ích mở rộng này đã được thực hiện, đã đến lúc khởi động lại version server Apache để các thay đổi được áp dụng:
sudo service apache2 restart
Bước 2 - Tạo Database MySQL và User
Magento sử dụng database MySQL để quản lý dữ liệu trang web, chẳng hạn như thông tin sản phẩm và đơn đặt hàng. Ta đã cài đặt và cấu hình MySQL, nhưng ta cần tạo database và user để Magento làm việc.
Bắt đầu bằng cách đăng nhập vào account root MySQL:
mysql -u root -p
Bạn sẽ được yêu cầu nhập password account root của MySQL, password mà bạn đã đặt khi cài đặt MySQL. Khi password chính xác đã được gửi, bạn sẽ nhận được dấu nhắc lệnh MySQL.
Đầu tiên, ta sẽ tạo một database mà Magento có thể ghi dữ liệu vào. Trong ví dụ này, database sẽ được gọi là magento
, nhưng bạn có thể đặt tên nó bạn muốn .
CREATE DATABASE magento;
Lưu ý: Mọi câu lệnh MySQL phải kết thúc bằng dấu chấm phẩy ( ;
), vì vậy hãy kiểm tra đảm bảo rằng bạn đã bao gồm điều đó nếu bạn đang gặp sự cố nào .
Tiếp theo, ta sẽ tạo một account user MySQL mới sẽ được sử dụng riêng để hoạt động trên database mới. Tạo database và account một chức năng là một ý tưởng hay, vì nó cho phép kiểm soát tốt hơn các quyền và các nhu cầu bảo mật khác.
Tôi sẽ gọi cho account mới magento_user
và sẽ gán cho nó một password của password
. Bạn chắc chắn nên sử dụng tên user và password khác, vì những ví dụ này không an toàn lắm.
CREATE USER magento_user@localhost IDENTIFIED BY 'password';
Đến đây, bạn có một database và một account user được tạo riêng cho Magento. Tuy nhiên, user không có quyền truy cập vào database . Ta cần liên kết hai thành phần với nhau bằng cách cấp cho user quyền truy cập database :
GRANT ALL PRIVILEGES ON magento.* TO magento_user@localhost IDENTIFIED BY 'password';
Bây giờ user đã có quyền truy cập vào database , ta cần xóa các quyền để MySQL biết về những thay đổi quyền gần đây mà ta đã thực hiện. Sau khi hoàn tất, ta có thể thoát khỏi dấu nhắc lệnh MySQL.
FLUSH PRIVILEGES; exit
Đến đây bạn sẽ quay lại dấu nhắc lệnh SSH thông thường của bạn .
Bước 3 - Download và cài đặt file Magento
Bây giờ ta đã sẵn sàng download và cài đặt Magento. Để xem version ổn định mới nhất của Magento Community Edition là gì, hãy truy cập trang download cộng đồng . Trong ví dụ này, số phát hành hiện tại là 1.9.0.1, nhưng bạn nên thay thế số đó cho version mới nhất có sẵn cho bạn. Bạn luôn nên sử dụng version Magento mới nhất, vì các bản phát hành mới thường bao gồm các bản cập nhật bảo mật quan trọng ngoài các tính năng mới và cải tiến.
Sử dụng wget
để download repository file Magento vào folder chính của bạn:
cd ~ wget http://www.magentocommerce.com/downloads/assets/1.9.0.1/magento-1.9.0.1.tar.gz
Ta có thể extract các file đã lưu trữ để xây dựng lại folder Magento bằng tar
:
tar xzvf magento-1.9.0.1.tar.gz
Đến đây bạn sẽ có một folder tên là magento
trong folder chính của bạn. Ta cần phải di chuyển các file đã extract đến root tài liệu của Apache, nơi nó có thể được phân phát cho khách truy cập trang web của ta . Ta sẽ sử dụng rsync
để chuyển các file Magento của ta đến đó, vì rsync
sẽ bao gồm các file ẩn quan trọng như .htaccess
. Khi quá trình chuyển hoàn tất, ta có thể dọn dẹp folder chính của bạn bằng cách xóa folder magento
và lưu trữ ở đó.
sudo rsync -avP ~/magento/. /var/www/html/ rm -rf ~/magento*
rsync
sẽ sao chép an toàn tất cả nội dung từ folder mà bạn đã extract vào folder root của tài liệu tại /var/www/html/
. Bây giờ ta cần chỉ định quyền sở hữu các file và folder cho user và group của Apache:
sudo chown -R www-data:www-data /var/www/html/
Thay đổi này sẽ cho phép Apache tạo và sửa đổi các file Magento. Bây giờ ta đã sẵn sàng để hoàn tất quá trình cài đặt thông qua giao diện cấu hình dựa trên trình duyệt của Magento.
Bước 4 - Hoàn tất cài đặt thông qua giao diện web
Để truy cập giao diện web bằng trình duyệt của bạn, hãy chuyển đến domain hoặc địa chỉ IP công cộng của server :
http://server_domain_name_or_IP/
Nếu các bước trước đó được thực hiện đúng, bạn sẽ thấy trình hướng dẫn cài đặt của Magento. Trang đầu tiên sẽ hiển thị thỏa thuận cấp phép mà bạn cần phải đồng ý trước khi có thể nhấn Tiếp tục .
Trang tiếp theo là nơi bạn có thể thay đổi cài đặt ngôn ngữ của bạn , như ngôn ngữ, múi giờ và đơn vị tiền tệ. Thay đổi những cài đặt này thành cài đặt phù hợp nhất với nơi sản phẩm của bạn đang được bán, sau đó nhấn Tiếp tục .
Trang Cấu hình được chia thành ba phần. Phần đầu tiên là nơi bạn có thể cài đặt cách Magento kết nối với database MySQL của nó. Đảm bảo rằng Loại database được đặt thành “MySQL” và Server được đặt thành “ server local ”. Sau đó, bạn cần điền vào Tên database , Tên người dùng và Mật khẩu user với các cài đặt mà bạn đã quyết định khi tạo database MySQL và account user trước đó.
Phần tiếp theo trên trang Cấu hình là nơi bạn có thể cấu hình URL cửa hàng của bạn , cùng với một số chức năng khác do Apache kiểm soát. Đảm bảo rằng URL cơ sở trùng với domain server của bạn; nếu bạn chưa cài đặt domain , bạn có thể sử dụng địa chỉ IP công cộng của server của bạn ngay bây giờ. Bạn nên thay đổi Đường dẫn quản trị thành một thứ gì đó ít rõ ràng hơn là "admin" để khiến ai đó khó tìm thấy bảng quản trị của bạn hơn. Bạn cũng nên cân nhắc kiểm tra Sử dụng phần ghi lại của Server Web (Apache) để làm cho URL của trang web thân thiện hơn với user và công cụ tìm kiếm. Mô-đun Apache cần thiết để hỗ trợ chức năng này, mod_rewrite
, đã được kích hoạt và sẵn sàng sử dụng.
Phần cuối cùng của trang Cấu hình là để chọn phương pháp lưu trữ dữ liệu phiên. Magento cung cấp hai phương pháp lưu dữ liệu phiên user . Phương pháp Hệ thống file lưu trữ các phiên trong file trên server và là phương pháp đơn giản nhất để bắt đầu. Phương thức Database lưu trữ các phiên làm mục nhập trong database MySQL và lý tưởng cho việc cài đặt Magento trải dài trên nhiều server . Hiện tại, ta có thể gắn bó với phương pháp Hệ thống file , vì nó thường hoạt động tốt hơn.
Sau khi chọn các tùy chọn cấu hình và nhấn Tiếp tục , bạn sẽ chuyển sang trang tạo account administrator . Đây là nơi bạn sẽ tạo account quản trị chịu trách nhiệm duy trì cửa hàng Magento. Đảm bảo rằng tên user và password đều an toàn và khó đoán. Trường Khóa mã hóa phải được để trống trừ khi bạn đang di chuyển dữ liệu từ cài đặt Magento hiện có. Nếu bạn để trống trường, Magento sẽ tạo một khóa mã hóa mới khi bạn nhấp vào Tiếp tục và sẽ hiển thị nó cho bạn trên trang tiếp theo. Đảm bảo rằng bạn lưu khóa mã hóa đó ở một nơi an toàn trong trường hợp bạn cần nó cho mục đích di chuyển sau này.
Khi bạn đã hoàn tất cấu hình dựa trên web, cài đặt Magento của bạn sẽ sẵn sàng để sử dụng. Kiểm tra mặt tiền cửa hàng mới của bạn bằng cách truy cập vào domain của server hoặc địa chỉ IP công cộng trong trình duyệt web :
http://server_domain_name_or_IP/
Nếu mọi thứ đã được cấu hình chính xác, bạn sẽ thấy mặt tiền cửa hàng trông giống như sau:
Bạn cũng có thể truy cập trang web quản trị mới của bạn bằng cách truy cập folder quản trị mà bạn đã đặt trước đó:
http://server_domain_name_or_IP/admin/
Đăng nhập bằng tên user và password administrator của bạn để xem trang tổng quan mới của bạn:
Kết luận
Đến đây bạn đã cài đặt và chạy cửa hàng Magento của bạn , bạn đã sẵn sàng để bắt đầu xây dựng danh mục dự án của bạn và bắt đầu bán!
Bước quan trọng tiếp theo cần thực hiện để mã hóa lưu lượng truy cập trang web bằng certificate SSL. Đây là hướng dẫn để giúp bạn bắt đầu: Cách Cài đặt Chứng chỉ SSL từ Tổ chức phát hành certificate thương mại .
Các tin liên quan
Cách cài đặt và cấu hình PowerDNS với MariaDB Backend trên Ubuntu 14.042014-12-02
Cách cài đặt MEAN.JS Stack trên server Ubuntu 14.04
2014-11-26
Cách tăng tốc trang web Drupal 7 của bạn với Varnish 4 trên Ubuntu 14.04 và Debian 7
2014-11-17
Cách nâng cấp Ubuntu 12.04 LTS lên Ubuntu 14.04 LTS
2014-11-17
Các bước được đề xuất bổ sung cho server Ubuntu 14.04 mới
2014-11-04
Cơ bản về quản lý gói Ubuntu và Debian
2014-11-03
Cách quản lý cụm của bạn với Chef và Knife trên Ubuntu
2014-10-31
Cách cài đặt Zentyal trên Ubuntu 14.04
2014-10-29
Cách cài đặt và cấu hình VNC trên Ubuntu 14.04
2014-10-23
Cách tạo module puppet để tự động cài đặt WordPress trên Ubuntu 14.04
2014-10-22