HƯỚNG DẪN Cài đặt Magento với Nginx trên Ubuntu 16.04

Thảo luận trong 'KIẾN THỨC VPS/SERVER' bắt đầu bởi quyet1990, 2/11/16.

  1. quyet1990

    quyet1990 New Member

    Tham gia ngày:
    22/10/16
    Bài viết:
    220
    Đã được thích:
    0
    Giới thiệu
    Magento một mã nguồn mở được xây dựng bằng PHP giúp cho lập trình viên có thể tạo ra các trang web thương mại điện tử. Magento được tung ra vào ngày 31/3/2008 bởi Varien và nó được phát triển trên nền tảng của Zend Framework.
    Trong hướng dẫn này, tôi sẽ cho bạn thấy làm thế nào để cài đặt Magento 2 với Nginx, PHP 7.0 trong chế độ FPM và MariaDB làm cơ sở dữ liệu. Tôi sẽ sử dụng ubuntu 16.04 (Xenial Xerus) là hệ điều hành máy chủ.

    Bước 1: Cài đặt Nginx và cập nhật hệ thống Ubuntu
    Đăng nhập vào máy chủ bằng ssh, sau đó sử dụng câu lệnh sau:
    Mã:
    apt-get update
    Cài đặt Nginx với lệnh:
    Mã:
     apt-get install nginx -y
    Kiểm tra xem nginx đã chạy chưa bằng lệnh:
    Mã:
    netstat -plntu | grep 80
    Bước 2 - Cài đặt và cấu hình PHP-FPM
    Trong bước này, chúng ta sẽ phải cài đặt PHP 7 trong chế độ PHP-FPM. Ngoài ra chúng tôi sẽ cài đặt các phần mở rộng PHP được yêu cầu của Magento bằng câu lệnh sau:

    Mã:
    apt-get install php7.0-fpm php7.0-Mcrypt php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0-json php php7.0-intl -pear php7.0-dev php7.0-chung php7.0-mbstring php7.0-zip php-soap libcurl3 curl -y
    
    Bây giờ chỉnh sửa các tập tin php.ini cho FPM và cli.
    Mã:
    vim /etc/php/7.0/fpm/php.ini
    vim /etc/php/7.0/cli/php.ini
    
    và tăng giới hạn bộ nhớ và thời gian thực thi php và bật zlib bằng cách thêm các dòng sau vào cuối file:
    Mã:
    memory_limit = 512M
    max_execution_time = 1800
    zlib.output_compression = On
    
    Lưu file và thoát khỏi trình soạn thảo.
    Khởi động lại dịch vụ PHP-FPM để các thay đổi cấu hình được áp dụng:
    Mã:
    systemctl restart php7.0-fpm
    Bước 3 - Cài đặt và cấu hình MariaDB
    MariaDB là cơ sở dữ liệu máy chủ phân nhánh của hệ thống quản lý cơ sở dữ liệu quan hệ MYSQL.
    Cài đặt phiên bản mới nhất của MariaDB với lệnh:
    Mã:
    apt-get install mariadb-client mariadb-server -y
    Khi cài đặt xong, khởi động MariaDB:
    Mã:
    systemctl start mysql
    Bây giờ chúng ta sẽ cấu hình tên người dùng và mật khẩu MariaDB với lệnh dưới đây:
    Mã:
    mysql_secure_installation
    Mã:
    Set root password? [Y/n] Y
    New password:
    Re-enter new password:
    
    Remove anonymous users? [Y/n] Y
    ... Success!
    
    Disallow root login remotely? [Y/n] Y
    ... Success!
    
    Remove test database and access to it? [Y/n] Y
    ... Success!
    
    Reload privilege tables now? [Y/n] Y
    ... Success!
    
    Đăng nhập vào MariaDB với mật khẩu của bạn đã tạo ở trên và tạo ra một cơ sở dữ liệu mới cho magento gọi là "magentodb" và tạo mới user MariaDB/MySQL là "magentouser" với mật khẩu "password” và cuối cùng sau đó cấp lại quyền truy cập vào cơ sở dữ liệu. Vui lòng chọn một mật khẩu an toàn thay vì "password" đối với cài đặt của bạn!

    Mã:
    mysql -u root -p
    create database [I]magentodb[/I];
    create user [I]magentouser[/I]@localhost identified by 'password';
    grant all privileges on [I]magentodb[/I].* to [I]magentouser[/I]@localhost identified by 'password';
    flush privileges;
    quit;
    
    Cơ sở dữ liệu "magentodb" với người sử dụng "magentouser" đã được tạo ra.

    Bước 4 - Cài đặt và cấu hình Magento 2
    Chúng tôi sẽ cài đặt Magento trong thư mục '/var/www/magento2'. Đối với việc cài đặt Magento, chúng tôi cần PHP composer.
    - Cài đặt PHP composer
    Tới thư mục gốc, tải về các tập tin cài đặt PHP composer với curl và chạy nó để cài đặt PHP composer.
    Mã:
    cd ~/
    curl -sS https://getcomposer.org/installer | php
    
    Di chuyển các tập tin 'composer.phar' vào thư mục bin trên máy chủ của bạn và đổi tên nó thành composer để nó có thể được thực hiện một cách dễ dàng:
    Mã:
    mv composer.phar /usr/bin/composer
    Bây giờ xác minh rằng composer đang làm việc:
    Mã:
    composer -v


    - Tải về và giải nén Magento 2
    Chuyển đến thư mục web '/var/www/' và tải về Magento từ kho Github, giải nén tập tin tar.gz tải về và sau đó đổi tên thư mục giải nén sang tên “magento2”.
    Mã:
    cd /var/www/
    wget https://github.com/magento/magento2/archive/2.0.7.tar.gz
    tar -xzvf 2.0.7.tar.gz
    mv magento2-2.0.7/ magento2/
    
    - Cấu hình Magento Key
    Đăng ký một tài khoản trên trang web Magento repo.magento.com. Tài khoản này là cần thiết để sử dụng Magento và cửa hàng composer Magento. Khi bạn đã đăng ký, hãy vào tab ‘My Account > Developer > Secure Keys', và sau đó tạo ra khóa cho bạn:
    [​IMG]
    - Cài đặt các thành phần của bên thứ ba cho Magento
    Tới các thư mục cài đặt Magento 2 '/var/www/magento2 "và chạy các lệnh sau:
    Mã:
    cd /var/www/magento2/
    composer install -v
    
    Bạn sẽ được yêu cầu xác thực Magento, sử dụng khóa công khai là tên truy cập và khóa riêng cho mật khẩu.
    [​IMG]

    - Cấu hình Nginx VirtualHost
    Chuyển đến thư mục Nginx VirtualHost và tạo tập tin gọi là magento mới:
    Mã:
    cd /etc/nginx/sites-available/
    vim magento
    
    Dán nội dung vào:
    Mã:
    upstream fastcgi_backend {
    server unix:/run/php/php7.0-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;
    }
    
    Thay www.newmagento.com với tên miền của trang web mà bạn sẽ sử dụng.
    Lưu lại và thoát.
    Bây giờ kích hoạt các VirtualHost và khởi động lại Nginx:
    Mã:
    ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
    systemctl restart nginx
    
    - Cài đặt Magento
    Chúng tôi sẽ cài đặt magento bằng dòng lệnh. Trong thư mục Magento '/var/www/magento2/' có tập tin nhị phân với tên 'Magento' được sử dụng để cài đặt và quản lý Magento. Chạy lệnh:
    Mã:
    bin/magento setup:install --backend-frontname="adminlogin" \
    --key="biY8vdWx4w8KV5Q59380Fejy36l6ssUb" \
    --db-host="localhost" \
    --db-name="magentodb" \
    --db-user="magentouser" \
    --db-password="password" \
    --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 = trang quản trị cho trang web magento của chúng tôi, chúng tôi sử dụng 'adminlogin'.
    --key = khóa magento của chúng tôi, chúng tôi có thể tạo ra nó, hoặc tìm thấy nó ngẫu nhiên trên http://randomkeygen.com/.
    --base-url = chắc chắn rằng nó giống với cấu hình virtual host.

    [​IMG]

    Vào cuối của quá trình cài đặt bạn sẽ thấy những dòng này:
    Mã:
    [SUCCESS]: Magento installation complete.
    [SUCCESS]: Magento Admin URI: /adminlogin
    
    Kiểm tra các cài đặt Magento, đảm bảo chủ sở hữu thư mục magento2 là 'www-data ", sau đó khởi động lại nginx.
    Mã:
    cd /var/www/magento2/
    chmod 700 /var/www/magento2/app/etc
    chown -R www-data:www-data .
    systemctl restart nginx
    
    Bây giờ mở tên miền Magento trong trình duyệt của bạn:
    Trong trường hợp của tôi, tên miền là: www.newmagento.com.
    [​IMG]
    Đăng nhập vào trang quản trị Magento:
    www.newmagento.com/adminlogin
    [​IMG]

    [​IMG]

    Chú thích :
    Nếu bạn nhận được một lỗi về thiếu Magento indexer cronjob, bạn có thể giải quyết nó bằng cách thêm các cronjob sau đến máy chủ của bạn:
    Mã:
    crontab -u www-data -e
    Thêm các dòng sau đây:
    Mã:
    * * * * * /usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log
    * * * * * /usr/bin/php /var/www/magento2/update/cron.php >> /var/www/magento2/var/log/update.cron.log
    * * * * * /usr/bin/php /var/www/magento2/bin/magento setup:cron:run >> /var/www/magento2/var/log/setup.cron.log
    
    Lưu lại và thoát.
    Bây giờ, Magento 2 với Nginx và PHP-FPM 7 đã được cài đặt thành công trên Ubuntu 16.04.
     

Chia sẻ trang này

Đang tải...