Cách cài đặt X-Cart với Nginx và Let's Encrypt SSL trên Ubuntu 18.04 LTS

theanh

Administrator
Nhân viên
X-Cart là một nền tảng thương mại điện tử mã nguồn mở cực kỳ linh hoạt với nhiều chức năng và tích hợp. Mã nguồn X-Cart được lưu trữ trên Github. Hướng dẫn này mô tả quy trình cài đặt X-Cart 5 trên Ubuntu 18.04 LTS bằng cách sử dụng Nginx làm máy chủ web và MySQL làm máy chủ cơ sở dữ liệu và cách bảo mật cài đặt bằng Chứng chỉ SSL miễn phí từ Let's encrypt.

Yêu cầu​

  • Phiên bản PHP 7.2 trở lên
  • Phần mở rộng PHP: pdo, phar, mysql, mbstring, curl
  • Phiên bản MySQL 5.7.7 trở lên hoặc MariaDB tương đương
  • Nginx

Các bước ban đầu​

Kiểm tra phiên bản Ubuntu của bạn:
Mã:
lsb_release -ds
# Ubuntu 18.04.4 LTS
Thiết lập múi giờ:
Mã:
sudo dpkg-reconfigure tzdata
Cập nhật các gói hệ điều hành (phần mềm) của bạn. Đây là bước đầu tiên quan trọng vì nó đảm bảo bạn có các bản cập nhật và bản sửa lỗi bảo mật mới nhất cho các gói phần mềm mặc định của hệ điều hành:
Mã:
sudo apt update && sudo apt upgrade -y
Cài đặt một số gói thiết yếu cần thiết cho việc quản trị cơ bản hệ điều hành Ubuntu:
Mã:
sudo apt install -y curl wget vim gitunzip socat bash-completion

Bước 1 - Cài đặt PHP và các tiện ích mở rộng PHP​

Cài đặt PHP cũng như các tiện ích mở rộng PHP cần thiết:
Mã:
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-curl php7.2-mysql php7.2-json php7.2-xml php7.2-phar php7.2-pdo php7.2-gd
Để hiển thị PHP đã biên dịch trong các mô-đun, bạn có thể chạy:
Mã:
php -m

ctype
curl
exif
thông tin tệp
. . .
. . .
Kiểm tra phiên bản PHP:
Mã:
php --version

#PHP 7.2.17-0ubuntu0.18.04.1 (cli) (xây dựng: 18 tháng 4 năm 2019 14:12:38) (NTS)
# Bản quyền (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Bản quyền (c) 1998-2018 Zend Technologies
# với Zend OPcache v7.2.17-0ubuntu0.18.04.1, Bản quyền (c) 1999-2018, của Zend Technologies
Dịch vụ PHP-FPM được tự động khởi động và bật khi khởi động lại trên hệ thống Ubuntu 18.04, do đó không cần phải khởi động và bật thủ công. Chúng ta có thể chuyển sang bước tiếp theo, đó là cơ sở dữ liệu cài đặt và thiết lập.

Bước 2 - Cài đặt MySQL và tạo cơ sở dữ liệu​

Cài đặt MySQL:
Mã:
sudo apt install -y mysql-server
Kiểm tra phiên bản:
Mã:
mysql --version
# mysql Ver 14.14 Distrib 5.7.27, dành cho Linux (x86_64) sử dụng trình bao bọc EditLine
Chạy tập lệnh mysql_secure_installation để cải thiện tính bảo mật cho cài đặt MySQL của bạn:
Mã:
sudo mysql_secure_installation
Đăng nhập vào MySQL với tư cách là người dùng root:
Mã:
sudo mysql -u root -p
# Nhập mật khẩu:
Tạo cơ sở dữ liệu và người dùng MySQL mới và ghi nhớ thông tin đăng nhập:
Mã:
TẠO CƠ SỞ DỮ LIỆU dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit;

Bước 3 - Cài đặt máy khách acme.sh và lấy chứng chỉ Let's Encrypt (tùy chọn)​

Không nhất thiết phải bảo mật trang web của bạn bằng HTTPS, nhưng đây là một biện pháp tốt để bảo mật lưu lượng truy cập trang web của bạn. Để lấy chứng chỉ TLS từ Let's Encrypt, chúng tôi sẽ sử dụng máy khách acme.sh. Acme.sh là phần mềm shell UNIX thuần túy để lấy chứng chỉ TLS từ Let's Encrypt mà không phụ thuộc vào bất kỳ thứ gì.

Tải xuống và cài đặt acme.sh:
Mã:
sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
./acme.sh --install --accountemail [emailprotected]
source ~/.bashrc
cd ~
Kiểm tra phiên bản acme.sh:
Mã:
acme.sh --version
# v2.8.1
Lấy chứng chỉ RSAECC/ECDSA cho tên miền/tên máy chủ của bạn:
Mã:
# RSA 2048
acme.sh --issue--standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256
Nếu bạn muốn có chứng chỉ giả để thử nghiệm, bạn có thể thêm --stagingcờ vào các lệnh trên.

Sau khi chạy các lệnh trên, chứng chỉkhóacủa bạn sẽ nằm trong:
  • Đối với RSA: thư mục /home/username/example.com.
  • Đối với ECC/ECDSA: thư mục /home/username/example.com_ecc.
Để liệt kê các chứng chỉ đã cấp, bạn có thể chạy:
Mã:
acme.sh --list
Tạo thư mục để lưu trữ chứng chỉ của bạn. Chúng tôi sẽ sử dụng thư mục /etc/letsencrypt.
Mã:
mkdir -p /etc/letsecnrypt/example.com
[ICODE]sudo mkdir -p /etc/letsencrypt/example.com_ecc
Cài đặt/sao chép chứng chỉ vào/etc/letsencryptthư mục.
Mã:
# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
Tất cả các chứng chỉ sẽ được tự động gia hạn sau mỗi 60 ngày.

Sau khi lấy được chứng chỉ, hãy thoát khỏi người dùng root và trở lại với người dùng sudo bình thường:
Mã:
exit

Bước 4 - Cài đặt và cấu hình Nginx​

Cài đặt Nginx:
Mã:
sudo apt install -y nginx
Kiểm tra phiên bản Nginx:
Mã:
sudo nginx -v
#nginx version: nginx/1.14.0 (Ubuntu)
Cấu hình Nginx cho X-Cart bằng cách chạy:
Mã:
sudo vim /etc/nginx/sites-available/xcart.conf
Và điền vào tệp với cấu hình bên dưới.
Mã:
server { listen 80; listen [::]:80; root /var/www/xcart; index index.php index.html index.htm; server_name example.com; location @handler { index cart.php; rewrite ^/sitemap.xml(\?.+)?$ /cart.php?target=sitemap; viết lại ^/(.*)$ /cart.php?url=$1 cuối cùng; } vị trí / { try_files $uri $uri/ @handler; } vị trí ~ \.php$ { try_files $uri @handler; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; bao gồm fastcgi_params; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }}
Kích hoạt cấu hình xcart.conf[/ICODE] mới bằng cách liên kết tệp đến thư mục sites-enabled:
Mã:
sudo ln -s /etc/nginx/sites-available/xcart.conf /etc/nginx/sites-enabled
Kiểm tra cấu hình:
Mã:
sudo nginx -t
Tải lại Nginx:
Mã:
sudo systemctl reload nginx

Bước 5 - Cài đặt X-Cart​

Điều hướng đến thư mục /var/www:
Mã:
cd /var/www/
Tải xuống gói X-Cart 5 từ trang này:http://www.x-cart.com/download.html

Tải gói đã tải xuống lên máy chủ của bạn.

Thay đổi quyền sở hữu thư mục /var/www/xcart thành www-data:
Mã:
sudo chown -R www-data:www-data /var/www/xcart
Điều hướng đến example.com/install.php trong trình duyệt web của bạn và làm theo hướng dẫn để hoàn tất quá trình cài đặt.

Bước 6 - Hoàn tất thiết lập​

Chấp nhận thỏa thuận cấp phép và nhấp vàoTiếp theo.



Tạo Tài khoản Quản trị viên.



Trình hướng dẫn cài đặt sẽ kiểm tra xem máy chủ của bạn có đáp ứng các yêu cầu hệ thống cho X-Cart 5 hay không



Cấu hình cài đặt cơ sở dữ liệu:



Thiết lập Thư mục + Bước 6. Xây dựng Bộ đệm.Tất cả các tác vụ ở các bước này đều được tự động hóa hoàn toàn, vì vậy bạn chỉ cần đợi và để X-Cart 5 thực hiện công việc



Bây giờ quá trình cài đặt đã hoàn tất.Bạn có thể sử dụng các liên kết được cung cấp để truy cập vào giao diện Khách hàng và khu vực Quản trị của cửa hàng.

https://kb.x-cart.com/attachments/ref_VG5mIoLT/xc_install_7.png?utm_source=diendancongnghe.com
 
Back
Bên trên