Shopware CE là một nền tảng thương mại điện tử miễn phí và mã nguồn mở được viết bằng Symfony và Vue.js. Nền tảng này dựa trên một công nghệ khá hiện đại và là một giải pháp thay thế rất tốt cho một ứng dụng thương mại điện tử khác, như Magento. Đây là một ứng dụng rất mạnh mẽ và linh hoạt, cho phép bạn nhanh chóng và dễ dàng tận dụng tiềm năng tăng trưởng của mình và tập trung vào trải nghiệm hoàn hảo của khách hàng. Nền tảng này cung cấp giao diện quản trị đơn giản và dễ sử dụng để quản lý khách hàng và đơn hàng. Nó cho phép bạn quản lý giá sản phẩm, thay đổi hoặc cập nhật chủ đề, thiết kế mẫu email để tiếp thị sản phẩm của bạn và tạo kết quả thống kê.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Shopware CE với Nginx và Let's Encrypt trên Ubuntu 20.04.
Sau khi cả hai gói được cài đặt, hãy khởi động dịch vụ Nginx và MariaDB và cho phép chúng khởi động tại hệ thống boot:
Đầu tiên, hãy thêm kho lưu trữ PHP vào hệ thống của bạn bằng lệnh sau:
Sau khi kho lưu trữ được thêm vào, hãy cài đặt PHP cùng với các thư viện khác bằng lệnh sau:
Sau khi tất cả các gói được cài đặt, hãy chỉnh sửa tệp php.ini và điều chỉnh một số cài đặt mong muốn:
Thay đổi các dòng sau:
Lưu và đóng tệp khi bạn hoàn tất.
Tiếp theo, bạn sẽ cần cài đặt trình tải IonCube trong hệ thống của mình.
Đầu tiên, hãy tải xuống bằng lệnh sau:
Sau khi tải xuống, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Tiếp theo, xác định vị trí đường dẫn của thư mục tiện ích mở rộng PHP:
Bạn sẽ thấy kết quả đầu ra sau:
Tiếp theo, sao chép trình tải IonCube vào thư mục tiện ích mở rộng PHP:
Tiếp theo, chỉnh sửa tệp php.ini và định nghĩa trình tải IonCube:
Thêm dòng sau vào phần
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Shopware CE với Nginx và Let's Encrypt trên Ubuntu 20.04.
Điều kiện tiên quyết
- Máy chủ chạy Ubuntu 20.04 với tối thiểu 4 GB RAM.
- Tên miền hợp lệ được trỏ đến máy chủ của bạn.
- Mật khẩu gốc được cấu hình trên máy chủ của bạn.
Cài đặt Nginx và MariaDB
Đầu tiên, cài đặt máy chủ web Nginx và máy chủ cơ sở dữ liệu MariaDB bằng lệnh sau:
Mã:
apt-get install nginx mariadb-server -y
Mã:
systemctl start nginx
systemctl start mariadb
systemctl enable nginx
systemctl enable mariadb
Cài đặt PHP và các thành phần khác
Shopware 6 hỗ trợ các phiên bản PHP từ 7.2 đến 7.3. Vì vậy, bạn sẽ cần cài đặt PHP cùng với các thư viện khác trong hệ thống của mình.Đầu tiên, hãy thêm kho lưu trữ PHP vào hệ thống của bạn bằng lệnh sau:
Mã:
apt-get install software-properties-common -y
add-apt-repository ppa:ondrej/php
Mã:
apt-get install php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-curl php7.2-json php7.2-zip php7.2-gd php7.2-xml php7.2-mbstring php7.2-intl php7.2-opcache git unzip socat curl bash-completion -y
Mã:
nano /etc/php/7.2/fpm/php.ini
Mã:
memory_limit = 512Mupload_max_filesize = 20Mmax_execution_time = 300
Tiếp theo, bạn sẽ cần cài đặt trình tải IonCube trong hệ thống của mình.
Đầu tiên, hãy tải xuống bằng lệnh sau:
Mã:
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
Mã:
tar xfz ioncube_loaders_lin_x86-64.tar.gz
Mã:
php -i | grep extension_dir
Mã:
extension_dir => /usr/lib/php/20190902 => /usr/lib/php/20190902
Mã:
cp ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20180731/
Mã:
nano /etc/php/7.2/fpm/php.ini
PHP:
:
[CODE]zend_extension = /usr/lib/php/20180731/ioncube_loader_lin_7.2.so[/CODE]
Lưu và đóng tệp, sau đó khởi động lại dịch vụ PHP-FPM để áp dụng các thay đổi.
[CODE]systemctl restart php7.2-fpm[/CODE][HEADING=2]Cấu hình Cơ sở dữ liệu MariaDB[/HEADING]
Trước tiên, bảo mật cài đặt MariaDB và đặt mật khẩu gốc bằng tập lệnh sau:
[CODE]mysql_secure_installation[/CODE]
Trả lời tất cả các câu hỏi như hiển thị bên dưới:
[CODE]Nhập mật khẩu hiện tại cho root (nhập nếu không có):Đặt mật khẩu gốc? [C/N] CMật khẩu mới:Nhập lại mật khẩu mới:Xóa người dùng ẩn danh? [C/N] CKhông cho phép đăng nhập root từ xa? [C/N] CXóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [C/N] CTải lại bảng đặc quyền ngay bây giờ? [Y/n] Y[/CODE]
Sau khi hoàn tất, hãy đăng nhập vào shell MariaDB bằng lệnh sau:
[CODE]mysql -u root -p[/CODE]
Cung cấp mật khẩu gốc MariaDB của bạn rồi tạo cơ sở dữ liệu và người dùng cho Shopware:
[CODE]MariaDB [(none)]> CREATE DATABASE shopwaredb;
MariaDB [(none)]> GRANT ALL ON shopwaredb.* TO 'shopware'@'localhost' IDENTIFIED BY 'password';[/CODE]
Tiếp theo, xóa các đặc quyền và thoát khỏi MariaDB bằng lệnh sau:
[CODE]MariaDB [(none)]> xóa các đặc quyền;
MariaDB [(none)]> thoát;[/CODE]
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
[HEADING=2]Cài đặt Composer[/HEADING]
Composer là trình quản lý phụ thuộc cho PHP. Nó được sử dụng để cài đặt tất cả các phụ thuộc PHP cần thiết để cài đặt Shopware.
Bạn có thể cài đặt nó bằng lệnh curl như được hiển thị bên dưới:
[CODE]curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer[/CODE]
Sau khi cài đặt, hãy xác minh phiên bản Composer bằng lệnh sau:
[CODE]composer --version[/CODE]
Bạn sẽ nhận được kết quả sau:
[CODE]Composer version 1.10.7 2020-06-03 10:03:56[/CODE][HEADING=2]Tải xuống Shopware[/HEADING]
Trước tiên, hãy tạo một thư mục cho Shopware bên trong thư mục gốc web Nginx:
[CODE]mkdir /var/www/html/shopware[/CODE]
Tiếp theo, hãy thay đổi thư mục thành shopware và tải xuống phiên bản Shopware mới nhất bằng lệnh sau:
[CODE]cd /var/www/html/shopware
wget https://www.shopware.com/en/Download/redirect/version/sw6/file/install_6.2.2_1592398977.zip[/CODE]
Sau khi tải xuống, hãy giải nén tệp đã tải xuống bằng lệnh sau:
[CODE]unzip install_6.2.2_1592398977.zip[/CODE]
Tiếp theo, cài đặt tất cả các phụ thuộc PHP bằng lệnh sau:
[CODE]composer install[/CODE]
Tiếp theo, thay đổi quyền sở hữu của thư mục shopware và cấp quyền thích hợp bằng lệnh sau:
[CODE]chown -R www-data:www-data /var/www/html/shopware
chmod -R 755 /var/www/html/shopware[/CODE]
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
[HEADING=2]Cấu hình Nginx cho Shopware[/HEADING]
Đầu tiên, hãy tạo một tệp cấu hình máy chủ ảo Nginx mới cho Shopware:
[CODE]nano /etc/nginx/sites-available/shopware.conf[/CODE]
Thêm các dòng sau:
[CODE]server { listen 80; index index.php index.html; server_name shopware.linuxbuz.com; root /var/www/html/shopware/public; location /recovery/install { index index.php; try_files $uri /recovery/install/index.php$is_args$args; } location /recovery/update/ { location /recovery/update/assets { } if (!-e $request_filename){ rewrite . /recovery/update/index.php last; } } location / { try_files $uri /index.php$is_args$args; } vị trí ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; bao gồm fastcgi.conf; fastcgi_param HTTP_PROXY ""; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; client_max_body_size 24M; client_body_buffer_size 128k; fastcgi_pass unix:/run/php/php7.2-fpm.sock; http2_push_preload on; }}[/CODE]
Lưu và đóng tệp, sau đó bật tệp máy chủ ảo Shopware bằng lệnh sau:
[CODE]ln -s /etc/nginx/sites-available/shopware.conf /etc/nginx/sites-enabled/[/CODE]
Tiếp theo, kiểm tra Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
[CODE]nginx -t[/CODE]
Bạn sẽ nhận được kết quả sau:
[CODE]nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: kiểm tra tệp cấu hình /etc/nginx/nginx.conf thành công[/CODE]
Tiếp theo, khởi động lại dịch vụ Nginx để áp dụng các thay đổi:
[CODE]systemctl reload nginx[/CODE][HEADING=2]Truy cập Trình hướng dẫn cài đặt Shopware[/HEADING]
Lúc này, Shopware đã được cài đặt trong hệ thống của bạn. Bây giờ, hãy mở trình duyệt web của bạn và nhập URL http://shopware.linuxbuz.com. Bạn sẽ thấy trình hướng dẫn cài đặt web Shopware:
Chọn ngôn ngữ của bạn và nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Đảm bảo rằng tất cả các phụ thuộc bắt buộc đã được cài đặt, sau đó nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Chấp nhận các điều khoản và điều kiện, rồi nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Cung cấp thông tin chi tiết về cơ sở dữ liệu của bạn và nhấp vào nút [B]Bắt đầu cài đặt[/b]. Sau khi quá trình cài đặt hoàn tất thành công, bạn sẽ thấy màn hình sau:
Bây giờ, hãy nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình cấu hình Shopware:
Cung cấp tên cửa hàng, email, quốc gia, email quản trị, tên người dùng quản trị, mật khẩu và nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ được chuyển hướng đến màn hình bảng điều khiển Shopware:
Nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Cài đặt dữ liệu mong muốn và nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Chọn tác nhân email mong muốn và nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Chọn tùy chọn mong muốn và nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Cấu hình PayPal của bạn hoặc nhấp vào nút [B]Bỏ qua[/b]. Bạn sẽ thấy màn hình sau:
Cấu hình thông tin đăng nhập PayPal của bạn hoặc nhấp vào nút [B]Bỏ qua[/b]. Bạn sẽ thấy màn hình sau:
Chọn vùng của bạn và nhấp vào nút [B]Tiếp theo[/b]. Bạn sẽ thấy màn hình sau:
Nhấp vào nút [B]Bỏ qua[/b]. Sau khi Shopware được cấu hình, bạn sẽ thấy màn hình sau:
Nhấp vào nút [B]Hoàn tất[/b]. Bạn sẽ thấy bảng điều khiển Shopware trong màn hình sau:
[HEADING=2]Bảo mật Shopware bằng Let's Encrypt[/HEADING]
Trước khi bắt đầu, bạn sẽ cần cài đặt ứng dụng khách Certbot trong hệ thống của mình để cài đặt và quản lý Let's Encrypt SSL. Bạn có thể cài đặt bằng lệnh sau:
[CODE]apt-get install certbot python3-certbot-nginx -y[/CODE]
Sau khi cài đặt xong máy khách Certbot, hãy chạy lệnh sau để tải xuống và cài đặt Let's Encrypt SSL cho trang web của bạn:
[CODE]certbot --nginx -d shopware.linuxbuz.com[/CODE]
Cung cấp địa chỉ email của bạn và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
[CODE]Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator nginx, Installer nginxNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có muốn chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuậnphát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)o: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho shopware.linuxbuz.comĐang chờ xác minh...Đang dọn dẹp các thử tháchTriển khai chứng chỉ cho VirtualHost /etc/nginx/sites-enabled/shopware.conf[/CODE]
Chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không:
[CODE]Vui lòng chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không, xóa quyền truy cập HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn tùy chọn này chocác trang web mới hoặc nếu bạn tin tưởng rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2[/CODE]
Nhập 2 và nhấn enter để bắt đầu quy trình. Sau khi cài đặt hoàn tất, bạn sẽ thấy kết quả sau:
[CODE]Đang chuyển hướng tất cả lưu lượng truy cập trên cổng 80 sang ssl trong /etc/nginx/sites-enabled/shopware.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://shopware.linuxbuz.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=shopware.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/shopware.linuxbuz.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/shopware.linuxbuz.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 22-09-2020. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* chứng chỉ của bạn, hãy chạy "certbot renew" - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le[/CODE]
Tại thời điểm này, trang web Shopware của bạn được bảo mật bằng Let's Encrypt SSL. Bây giờ bạn có thể truy cập trang web của mình một cách an toàn bằng URL https://shopware.linuxbuz.com.
[HEADING=2]Kết luận[/HEADING]
Xin chúc mừng! bạn đã cài đặt thành công Shopware với Nginx và Let's Encrypt SSL trên Ubuntu 20.04. Bây giờ bạn có thể bắt đầu thiết lập doanh nghiệp trực tuyến của riêng mình bằng Shopware. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.