Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt và cấu hình phiên bản mới nhất của Prestashop trên bản phát hành Debian 9.1 để tạo giỏ hàng trực tuyến miễn phí của bạn.
Prestashop là một nền tảng quản lý nội dung thương mại điện tử mã nguồn mở miễn phí được viết bằng ngôn ngữ lập trình PHP thường được triển khai trên Linux dưới máy chủ web Apache/Nginx, hệ thống quản lý cơ sở dữ liệu PHP và MySQL/MariaDB. Prestashop CMS hiện nay được sử dụng rộng rãi để tạo các cửa hàng trực tuyến cho nhiều doanh nghiệp khác nhau, quảng cáo và bán các dịch vụ và hàng hóa.
Ở bước tiếp theo, hãy thực hiện lệnh sau để cài đặt một số tiện ích cần thiết sẽ được sử dụng để quản lý hệ thống của bạn từ dòng lệnh.
Tiếp theo, hãy thiết lập tên cho hệ thống của bạn bằng cách thực hiện lệnh sau. Thay thế biến hostname của bạn cho phù hợp.
Xác minh tên máy chủ và tệp hosts bằng cách phát hành các lệnh bên dưới.
Cuối cùng, khởi động lại máy chủ Debian để áp dụng các bản cập nhật kernel và các thay đổi tên máy chủ một cách chính xác.
Prestashop là một nền tảng thương mại điện tử CMS dựa trên web được viết chủ yếu bằng ngôn ngữ lập trình phía máy chủ PHP. Để thực thi các tập lệnh tệp PHP của Prestashop, một máy chủ web, chẳng hạn như máy chủ Apache HTTP và một cổng xử lý PHP phải được cài đặt và hoạt động trên máy chủ. Để cài đặt máy chủ web Apache và trình thông dịch PHP cùng với tất cả các mô-đun PHP cần thiết mà Prestashop cần để chạy đúng cách, hãy đưa ra lệnh sau trong bảng điều khiển máy chủ của bạn.
Sau khi Apache và PHP đã được cài đặt, hãy kiểm tra xem máy chủ web có đang hoạt động và lắng nghe các kết nối mạng trên cổng 80 hay không bằng cách đưa ra lệnh sau với quyền root.
Trong trường hợp tiện ích mạng netstat không được cài đặt theo mặc định trên hệ thống Debian của bạn, hãy thực hiện lệnh bên dưới để cài đặt.
Bằng cách kiểm tra đầu ra của lệnh netstat, bạn có thể thấy máy chủ web apache đang lắng nghe các kết nối mạng đến trên cổng 80. Đối với cùng một tác vụ, bạn cũng có thể sử dụng lệnh ss, được cài đặt tự động theo mặc định trong Debian 9.
Trong trường hợp bạn đã bật tường lửa trên hệ thống của mình, chẳng hạn như ứng dụng tường lửa UFW, bạn nên thêm một quy tắc mới để cho phép lưu lượng HTTP đi qua tường lửa bằng cách đưa ra lệnh sau.
hoặc
Nếu bạn đang sử dụng các quy tắc thô iptables để quản lý các quy tắc Tường lửa trong máy chủ Debian của mình, hãy thêm quy tắc sau để cho phép lưu lượng đến cổng 80 trên tường lửa để khách truy cập có thể duyệt cửa hàng trực tuyến Prestashop.
Tiếp theo, hãy bật và áp dụng các mô-đun Apache sau đây mà Prestashop CMS yêu cầu để chạy đúng cách bằng cách đưa ra lệnh bên dưới.
Cuối cùng, hãy kiểm tra xem trang web mặc định của máy chủ web Apache có thể hiển thị trên trình duyệt của máy khách hay không bằng cách truy cập địa chỉ IP máy Debian hoặc tên miền hoặc FQDN của máy chủ qua giao thức HTTP, như thể hiện trong hình ảnh bên dưới. Nếu bạn không biết địa chỉ IP của máy, hãy thực hiện lệnh ifconfig hoặc ip a để hiển thị địa chỉ IP của máy chủ.
Để cài đặt và truy cập bảng điều khiển quản trị web Prestashop được hỗ trợ và trang web giao diện người dùng thông qua giao thức HTTPS sẽ bảo mật lưu lượng truy cập cho khách hàng của bạn, hãy đưa ra lệnh sau để bật mô-đun SSL của máy chủ web Apache và tệp cấu hình trang web SSL.
Tiếp theo, hãy mở tệp cấu hình trang web SSL mặc định của Apache bằng trình soạn thảo văn bản và bật các quy tắc ghi đè URL bằng cách thêm các dòng mã sau sau lệnh DocumentRoot, như được hiển thị trong mẫu bên dưới:
Trích đoạn tệp cấu hình trang web SSL:
Ngoài ra, hãy thực hiện thay đổi sau đối với dòng VirtualHost để trông giống như trong đoạn trích bên dưới:
Đóng tệp Apache SSL và mở tệp /etc/apache2/sites-enabled/000-default.conf để chỉnh sửa và thêm các quy tắc ghi đè URL giống như đối với tệp cấu hình SSL. Chèn các dòng mã sau câu lệnh DocumentRoot như trong ví dụ bên dưới.
Cuối cùng, khởi động lại daemon Apache để áp dụng tất cả các quy tắc đã cấu hình cho đến nay và truy cập miền của bạn qua giao thức HTTP. Vì bạn đang sử dụng cặp chứng chỉ Tự ký tự động do Apache cấp khi cài đặt, nên cảnh báo lỗi sẽ hiển thị trên trình duyệt. Chấp nhận cảnh báo để tiếp tục và được chuyển hướng đến trang web mặc định của Apache.
Trong trường hợp ứng dụng tường lửa UFW chặn các kết nối mạng đến cổng HTTPS, bạn nên thêm một quy tắc mới để cho phép lưu lượng HTTPS đi qua tường lửa bằng cách phát hành lệnh sau.
hoặc
Nếu iptables là ứng dụng tường lửa mặc định được cài đặt để bảo vệ hệ thống Debian của bạn ở cấp độ mạng, hãy thêm quy tắc sau để cho phép lưu lượng đến cổng 443 trong tường lửa để khách truy cập có thể duyệt tên miền của bạn.
Trong bước tiếp theo, chúng ta cần thực hiện một số thay đổi nữa đối với tệp cấu hình mặc định của PHP để đảm bảo rằng các biến PHP sau được bật và cài đặt múi giờ của PHP được cấu hình chính xác và khớp với vị trí địa lý của hệ thống. Mở tệp /etc/php/7.0/apache2/php.ini để chỉnh sửa và đảm bảo rằng các dòng sau được thiết lập như sau. Ngoài ra, trước tiên, hãy sao lưu tệp cấu hình PHP.
Tìm kiếm, chỉnh sửa và thay đổi các biến sau trong tệp cấu hình php.ini:
Tăng biến memory_limit cho phù hợp để hỗ trợ các tệp đính kèm lớn và thay thế biến time.zone theo giờ thực tế của bạn bằng cách tham khảo danh sách múi giờ do tài liệu PHP cung cấp tại liên kết sau http://php.net/manual/en/timezones.php
Nếu bạn muốn tăng tốc độ tải các trang web của mình thông qua plugin OPCache có sẵn cho PHP7, hãy thêm các thiết lập OPCache sau vào cuối tệp cấu hình trình thông dịch PHP, như được nêu chi tiết bên dưới:
Đóng tệp cấu hình php.ini và kiểm tra xem có xác minh phần cuối của tệp cấu hình PHP để kiểm tra xem các biến đã được thêm chính xác hay chưa bằng cách đưa ra lệnh bên dưới.
Sau khi bạn đã thực hiện tất cả các thay đổi được giải thích ở trên, hãy khởi động lại daemon apache để áp dụng các thay đổi mới bằng cách đưa ra lệnh sau.
Cuối cùng, tạo một tệp thông tin PHP bằng cách thực thi lệnh sau và kiểm tra xem múi giờ PHP đã được định cấu hình chính xác hay chưa bằng cách truy cập tệp tập lệnh thông tin PHP từ trình duyệt tại URL sau, như minh họa trong hình ảnh bên dưới. Cuộn xuống cài đặt ngày để kiểm tra cấu hình múi giờ php.
Prestashop lưu trữ các cấu hình khác nhau, chẳng hạn như người dùng, phiên, danh bạ, sản phẩm, danh mục và các cấu hình khác, trong cơ sở dữ liệu RDBMS. Trong hướng dẫn này, chúng tôi sẽ cấu hình Prestashop để sử dụng cơ sở dữ liệu MariaDB làm phần phụ trợ. Phát hành lệnh bên dưới để cài đặt cơ sở dữ liệu MariaDB và mô-đun PHP cần thiết để truy cập cơ sở dữ liệu mysql.
Sau khi bạn đã cài đặt MariaDB, hãy xác minh xem daemon có đang chạy và lắng nghe các kết nối trên localhost, cổng 3306 hay không bằng cách chạy lệnh netstat.
Sau đó, đăng nhập vào bảng điều khiển MySQL và bảo mật tài khoản root MariaDB bằng cách đưa ra các lệnh sau.
Trong bước tiếp theo, bảo mật MariaDB bằng cách thực thi tập lệnhmysql_secure_installationdo các gói cài đặt từ kho lưu trữ Debian stretch cung cấp. Trong khi chạy, tập lệnh sẽ hỏi một loạt các câu hỏi được thiết kế để bảo mật cơ sở dữ liệu MariaDB, chẳng hạn như: thay đổi mật khẩu root MySQL, xóa người dùng ẩn danh, vô hiệu hóa đăng nhập root từ xa và xóa cơ sở dữ liệu thử nghiệm. Thực thi tập lệnh bằng cách đưa ra lệnh bên dưới và đảm bảo bạn nhập yes cho tất cả các câu hỏi được hỏi để bảo mật hoàn toàn daemon MySQL. Sử dụng đầu ra tập lệnh bên dưới trừ khi có hướng dẫn.
Để kiểm tra tính bảo mật của MariaDB, hãy thử đăng nhập vào cơ sở dữ liệu từ bảng điều khiển mà không cần mật khẩu gốc. Quyền truy cập vào cơ sở dữ liệu sẽ bị từ chối nếu không cung cấp mật khẩu cho tài khoản gốc. Nếu mật khẩu được cung cấp, quy trình đăng nhập sẽ được cấp cho bảng điều khiển MySQL, như được hiển thị trong ảnh chụp màn hình bên dưới.
Tiếp theo, hãy đăng nhập vào bảng điều khiển cơ sở dữ liệu MariaDB, tạo cơ sở dữ liệu cho Prestashop và người dùng có mật khẩu sẽ được sử dụng để quản lý cơ sở dữ liệu Prestashop, bằng cách đưa ra các lệnh sau. Thay thế tên cơ sở dữ liệu PrestaShop, người dùng và mật khẩu cho phù hợp.
Để áp dụng tất cả các thay đổi đã thực hiện cho đến nay, hãy khởi động lại daemon MySQL và Apache và xác minh xem daemon có đang chạy hay không bằng cách phát hành các lệnh sau.
Sau khi tải xuống tệp zip hoàn tất, hãy giải nén tệp zip Prestashop trực tiếp vào thư mục gốc của máy chủ web và liệt kê các tệp đã giải nén bằng cách sử dụng các lệnh bên dưới. Ngoài ra, hãy xóa tệp index.html mặc định được máy chủ web Apache cài đặt vào đường dẫn gốc web và xóa tệp info.php đã tạo trước đó.
Tiếp theo, thực hiện các lệnh bên dưới để cấp cho người dùng thời gian chạy Apache quyền ghi đầy đủ vào đường dẫn gốc web. Sử dụng lệnh ls để liệt kê các quyền cho các tệp cài đặt Prestashop nằm trong thư mục /var/www/html/.
Tiến hành cài đặt Prestashop CMS bằng cách mở trình duyệt và điều hướng đến địa chỉ IP hoặc tên miền của máy chủ thông qua giao thức HTTPS. Trên màn hình cài đặt đầu tiên, tập lệnh cài đặt Prestashop sẽ mở rộng nội dung của tệp prestashop.zip từ đường dẫn gốc web của máy chủ web, như được hiển thị trong hình ảnh bên dưới.
Sau khi giải nén hoàn tất, bạn có thể chuyển sang dòng lệnh và liệt kê nội dung của thư mục /var/www/html/ để xem tất cả các tệp đã giải nén Prestashop.
Trên màn hình tiếp theo, trình cài đặt Prestashop sẽ hiển thị màn hình chào mừng và yêu cầu bạn chọn ngôn ngữ cài đặt để tiếp tục quá trình cài đặt. Chọn ngôn ngữ của bạn và nhấn nút Tiếp theo để tiếp tục bước tiếp theo.
Trên màn hình cài đặt tiếp theo, hãy chọn ‘Tôi đồng ý với các điều khoản cấp phép’ và nhấn nút Tiếp theo để tiếp tục, như minh họa trong hình ảnh bên dưới.
Trình cài đặt Prestashop hiện sẽ thực hiện một loạt các kiểm tra để xác định khả năng tương thích với hệ thống và môi trường của bạn và sẽ liệt kê các lỗi có thể xảy ra, nếu tìm thấy. Nếu môi trường hệ thống của bạn tương thích với cài đặt PrestaShop, một thông báo màu xanh lá cây sẽ hiển thị trên trang web của bạn, như trong ảnh chụp màn hình bên dưới. Một lần nữa, hãy nhấn vào nút Tiếp theo để tiếp tục quá trình cài đặt.
Trên màn hình tiếp theo, hãy thêm thông tin bắt buộc về Cửa hàng của bạn, chẳng hạn như tên cửa hàng, hoạt động chính, quốc gia nơi cửa hàng của bạn được đăng ký và thông tin chi tiết về tài khoản. Cung cấp địa chỉ email để truy cập bảng điều khiển web phụ trợ Prestashop và mật khẩu mạnh sẽ được sử dụng cho tài khoản này, như trong ảnh chụp màn hình bên dưới. Khi bạn hoàn tất, hãy nhấn nút Tiếp theo để tiếp tục.
trên màn hình cài đặt tiếp theo, hãy thêm địa chỉ cơ sở dữ liệu MySQL, tên và thông tin đăng nhập đã tạo trước đó cho Prestashop, hãy nhấn vào nút 'Kiểm tra kết nối cơ sở dữ liệu của bạn ngay bây giờ'. Nếu kết nối với cơ sở dữ liệu MySQL thành công, hãy nhấn nút Tiếp theo để bắt đầu quá trình cài đặt.
Chờ vài phút để trình cài đặt điền thông tin cần thiết vào cơ sở dữ liệu và hoàn tất quá trình cài đặt, như trong ảnh chụp màn hình bên dưới.
Sau khi quá trình cài đặt hoàn tất, trình cài đặt sẽ hiển thị thông tin đăng nhập bảng quản trị web được sao lưu của bạn và các siêu liên kết cần thiết để truy cập Backend Office của Prestashop, sẽ được sử dụng để quản lý cửa hàng trực tuyến của bạn và Front Office của cửa hàng, sẽ được hiển thị cho khách hàng của bạn.
Hãy đảm bảo rằng bạn nhấn vào nút Quản lý Back Office để truy cập vào backend của cửa hàng. Bạn nên ghi lại hoặc đánh dấu trang địa chỉ Back Office của cửa hàng để đăng nhập vào bảng điều khiển quản trị web từ các trình duyệt khác trong tương lai.
Khi cố gắng đăng nhập vào Back Office, một thông báo cảnh báo như trong hình bên dưới sẽ thông báo cho bạn rằng bạn nên xóa thư mục cài đặt khỏi đường dẫn gốc web của miền.
Để có thể đăng nhập vào bảng điều khiển quản trị được Prestashop hỗ trợ, hãy quay lại bảng điều khiển máy chủ của bạn và thực hiện lệnh sau để xóa thư mục cài đặt Prestashop.
Sau đó, tải lại trang Back Office của Prestashop và đăng nhập vào bảng điều khiển quản trị bằng thông tin đăng nhập được thiết lập trong quá trình cài đặt, như minh họa trong ảnh chụp màn hình sau.
Khi đăng nhập lần đầu, một thông báo chào mừng sẽ hiển thị trên trình duyệt. Nhấn vào nút bắt đầu sẽ chuyển hướng bạn đến Catalog nơi bạn có thể bắt đầu thêm sản phẩm đầu tiên của mình, như được hiển thị trong ảnh chụp màn hình bên dưới.
Để truy cập trang web giao diện Prestashop, chỉ cần nhập tên miền của bạn vào trình duyệt và bạn sẽ được tự động chuyển hướng đến trang đầu tiên, như được mô tả trong ảnh chụp màn hình sau.
Tuy nhiên, hiện tại, bạn chỉ có thể truy cập vào cửa hàng mà không cần bảo mật thông qua giao thức HTTP không được mã hóa. Để bật hỗ trợ HTTPS trong Prestashop, hãy đăng nhập vào bảng điều khiển Back Office và điều hướng đến Cấu hình -> Tham số cửa hàng -> Chung và nhấn vào Vui lòng nhấp vào đây để kiểm tra xem cửa hàng của bạn có hỗ trợ liên kết HTTPS không, như minh họa trong hình ảnh bên dưới.
Sau khi thực hiện các bài kiểm tra SSL, hãy chuyển nút Bật SSL thành CÓ và cuộn xuống cuối trang và nhấn vào nút Lưu để áp dụng cấu hình. Tuy nhiên, cấu hình này cho đến nay chỉ bật hỗ trợ SSL cho liên kết Back Office. Các khách hàng sẽ truy cập vào tên miền cửa hàng của bạn sẽ được chuyển hướng qua các kết nối không được mã hóa.
Để bảo mật lưu lượng truy cập của khách truy cập qua tên miền của bạn, hãy chuyển nút Bật SSL trên tất cả các trang thành Có, như được hiển thị trong hình ảnh bên dưới và cuộn xuống và nhấn vào nút Lưu ở cuối trang để áp dụng các thiết lập.
Để kiểm tra xem khách hàng hiện có được tự động chuyển hướng để truy cập tên miền của bạn qua kết nối được bảo mật thông qua giao thức HTTPS hay không, hãy làm mới trang giao diện Prestashop hoặc nhập tên miền của bạn vào trình duyệt. Tên miền cửa hàng của bạn hiện có thể được truy cập thông qua giao thức HTTP, như được minh họa trong hình ảnh bên dưới.
Vậy là xong! Bạn đã cài đặt và cấu hình PrestaShop thành công trên Debian 9.1. Tuy nhiên, vì máy chủ Apache HTTP của bạn sử dụng chứng chỉ Tự ký để mã hóa lưu lượng giữa máy chủ và trình duyệt của khách truy cập, nên một thông báo cảnh báo sẽ luôn được tạo và hiển thị trong trình duyệt của họ khi họ lần đầu truy cập cửa hàng. Cảnh báo này không tốt cho hoạt động kinh doanh cửa hàng trực tuyến của bạn. Trong trường hợp này, bạn nên mua chứng chỉ do một Cơ quan cấp chứng chỉ đáng tin cậy cấp hoặc nhận một cặp chứng chỉ miễn phí từ Let’s Encrypt CA.
Để biết các cấu hình tùy chỉnh khác liên quan đến Prestashop, hãy truy cập trang tài liệu theo địa chỉ sau: http://doc.prestashop.com/display/PS17/Installing+PrestaShop
Prestashop là một nền tảng quản lý nội dung thương mại điện tử mã nguồn mở miễn phí được viết bằng ngôn ngữ lập trình PHP thường được triển khai trên Linux dưới máy chủ web Apache/Nginx, hệ thống quản lý cơ sở dữ liệu PHP và MySQL/MariaDB. Prestashop CMS hiện nay được sử dụng rộng rãi để tạo các cửa hàng trực tuyến cho nhiều doanh nghiệp khác nhau, quảng cáo và bán các dịch vụ và hàng hóa.
Yêu cầu
- Cài đặt tối thiểu Debian 9 trên máy bare-metal hoặc trên máy chủ riêng ảo.
- Địa chỉ IP tĩnh được định cấu hình cho một trong các card giao diện mạng hệ thống của bạn.
- Quyền root sudo cho tài khoản cục bộ hoặc từ xa hoặc quyền truy cập trực tiếp vào tài khoản root.
- Tên miền, riêng tư hoặc công khai, tùy thuộc vào triển khai của bạn, với các bản ghi DNS thích hợp được định cấu hình.
Cấu hình ban đầu
Trước khi bắt đầu cài đặt và định cấu hình Prestashop từ nguồn trên máy chủ của riêng bạn, trước tiên hãy đảm bảo hệ thống đáp ứng mọi yêu cầu về phần mềm để biên dịch và cài đặt ứng dụng. Ở bước đầu tiên, hãy cập nhật kho lưu trữ hệ thống và các gói phần mềm của bạn bằng cách đưa ra lệnh bên dưới.
Mã:
apt update
Mã:
apt upgrade
Ở bước tiếp theo, hãy thực hiện lệnh sau để cài đặt một số tiện ích cần thiết sẽ được sử dụng để quản lý hệ thống của bạn từ dòng lệnh.
Mã:
apt install wget bash-completion zip unzip
Tiếp theo, hãy thiết lập tên cho hệ thống của bạn bằng cách thực hiện lệnh sau. Thay thế biến hostname của bạn cho phù hợp.
Mã:
hostnamectl set-hostname shop
Mã:
hostnamectl
Mã:
cat /etc/hostname
Mã:
hostname –s
Mã:
hostname –f
Cuối cùng, khởi động lại máy chủ Debian để áp dụng các bản cập nhật kernel và các thay đổi tên máy chủ một cách chính xác.
Mã:
systemctl reboot
Mã:
apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-gd php7.0-json php7.0-zip php7.0-intl php7.0-mcrypt php7.0-curl php7.0-intl php7.0-opcache
Mã:
netstat –tlpn
Mã:
apt install net-tools
Bằng cách kiểm tra đầu ra của lệnh netstat, bạn có thể thấy máy chủ web apache đang lắng nghe các kết nối mạng đến trên cổng 80. Đối với cùng một tác vụ, bạn cũng có thể sử dụng lệnh ss, được cài đặt tự động theo mặc định trong Debian 9.
Mã:
ss -tlpn
Mã:
ufw allow WWW
Mã:
ufw allow 80/tcp
Mã:
apt-get install -y iptables-persistent
Mã:
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
Mã:
systemctl iptables-persistent save
Mã:
systemctl iptables-persistent reload
Mã:
a2enmod rewrite
Mã:
systemctl restart apache2
Mã:
http://your_domain.tld
Để cài đặt và truy cập bảng điều khiển quản trị web Prestashop được hỗ trợ và trang web giao diện người dùng thông qua giao thức HTTPS sẽ bảo mật lưu lượng truy cập cho khách hàng của bạn, hãy đưa ra lệnh sau để bật mô-đun SSL của máy chủ web Apache và tệp cấu hình trang web SSL.
Mã:
a2enmod ssl
Mã:
a2ensite default-ssl.conf
Mã:
nano /etc/apache2/sites-enabled/default-ssl.conf
Mã:
Options +FollowSymlinks
AllowOverride All
Require all granted
Mã:
Đóng tệp Apache SSL và mở tệp /etc/apache2/sites-enabled/000-default.conf để chỉnh sửa và thêm các quy tắc ghi đè URL giống như đối với tệp cấu hình SSL. Chèn các dòng mã sau câu lệnh DocumentRoot như trong ví dụ bên dưới.
Mã:
Options +FollowSymlinks
AllowOverride All
Require all granted
[B][I]
[/I][/b]
Cuối cùng, khởi động lại daemon Apache để áp dụng tất cả các quy tắc đã cấu hình cho đến nay và truy cập miền của bạn qua giao thức HTTP. Vì bạn đang sử dụng cặp chứng chỉ Tự ký tự động do Apache cấp khi cài đặt, nên cảnh báo lỗi sẽ hiển thị trên trình duyệt. Chấp nhận cảnh báo để tiếp tục và được chuyển hướng đến trang web mặc định của Apache.
Mã:
systemctl restart apache2
Trong trường hợp ứng dụng tường lửa UFW chặn các kết nối mạng đến cổng HTTPS, bạn nên thêm một quy tắc mới để cho phép lưu lượng HTTPS đi qua tường lửa bằng cách phát hành lệnh sau.
Mã:
ufw allow 'WWW Full'
Mã:
ufw allow 443/tcp
Mã:
iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
Mã:
systemctl iptables-persistent save
Mã:
systemctl iptables-persistent reload
Mã:
cp /etc/php/7.0/apache2/php.ini{,.backup}
Mã:
nano /etc/php/7.0/apache2/php.ini
Mã:
file_uploads = On
allow_url_fopen = On
memory_limit = 128 M
upload_max_file_size = 64M
date.timezone = Europe/London
Nếu bạn muốn tăng tốc độ tải các trang web của mình thông qua plugin OPCache có sẵn cho PHP7, hãy thêm các thiết lập OPCache sau vào cuối tệp cấu hình trình thông dịch PHP, như được nêu chi tiết bên dưới:
Mã:
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
Mã:
tail /etc/php/7.0/apache2/php.ini
Mã:
systemctl restart apache2
Mã:
[B]echo ''| tee /var/www/html/info.php[/b]
Prestashop lưu trữ các cấu hình khác nhau, chẳng hạn như người dùng, phiên, danh bạ, sản phẩm, danh mục và các cấu hình khác, trong cơ sở dữ liệu RDBMS. Trong hướng dẫn này, chúng tôi sẽ cấu hình Prestashop để sử dụng cơ sở dữ liệu MariaDB làm phần phụ trợ. Phát hành lệnh bên dưới để cài đặt cơ sở dữ liệu MariaDB và mô-đun PHP cần thiết để truy cập cơ sở dữ liệu mysql.
Mã:
apt install mariadb-server php7.0-mysql
Sau khi bạn đã cài đặt MariaDB, hãy xác minh xem daemon có đang chạy và lắng nghe các kết nối trên localhost, cổng 3306 hay không bằng cách chạy lệnh netstat.
Mã:
netstat –tlpn | grep mysql
Mã:
mysql -h localhost
Mã:
use mysql;
update user set plugin='' where user='root';
flush privileges;
exit
Trong bước tiếp theo, bảo mật MariaDB bằng cách thực thi tập lệnhmysql_secure_installationdo các gói cài đặt từ kho lưu trữ Debian stretch cung cấp. Trong khi chạy, tập lệnh sẽ hỏi một loạt các câu hỏi được thiết kế để bảo mật cơ sở dữ liệu MariaDB, chẳng hạn như: thay đổi mật khẩu root MySQL, xóa người dùng ẩn danh, vô hiệu hóa đăng nhập root từ xa và xóa cơ sở dữ liệu thử nghiệm. Thực thi tập lệnh bằng cách đưa ra lệnh bên dưới và đảm bảo bạn nhập yes cho tất cả các câu hỏi được hỏi để bảo mật hoàn toàn daemon MySQL. Sử dụng đầu ra tập lệnh bên dưới trừ khi có hướng dẫn.
Mã:
sudo mysql_secure_installation
Mã:
LƯU Ý: KHUYẾN NGHỊ CHẠY TẤT CẢ CÁC PHẦN CỦA TỪNG TỪ NÀY CHO TẤT CẢ CÁC MÁY CHỦ MariaDB
Mã:
ĐANG SỬ DỤNG TRONG SẢN XUẤT! VUI LÒNG ĐỌC KỸ TỪNG BƯỚC!
Mã:
Mã:
Để đăng nhập vào MariaDB để bảo mật, chúng ta sẽ cần
Mã:
mật khẩu hiện tại của người dùng root. Nếu bạn vừa cài đặt MariaDB và
Mã:
bạn chưa đặt mật khẩu root, mật khẩu sẽ để trống,
Mã:
vì vậy bạn chỉ cần nhấn enter ở đây.
Mã:
Mã:
Nhập mật khẩu hiện tại cho root (nhập nếu không có):
Mã:
OK, mật khẩu đã sử dụng thành công, tiếp tục...
Mã:
Mã:
Đặt mật khẩu root đảm bảo rằng không ai có thể đăng nhập vào MariaDB
Mã:
người dùng root mà không có quyền thích hợp.
Mã:
Mã:
Bạn đã đặt mật khẩu root, vì vậy bạn có thể trả lời 'n' một cách an toàn.
Mã:
Mã:
Đổi mật khẩu root? [Y/n][B]y[/b]
Mã:
Mật khẩu mới:
Mã:
Nhập lại mật khẩu mới:
Mã:
Đã cập nhật mật khẩu thành công!
Mã:
Đang tải lại bảng đặc quyền..
Mã:
... Thành công!
Mã:
Mã:
Mã:
Theo mặc định, cài đặt MariaDB có một người dùng ẩn danh, cho phép bất kỳ ai
Mã:
đăng nhập vào MariaDB mà không cần phải tạo tài khoản người dùng cho
Mã:
họ. Điều này chỉ nhằm mục đích thử nghiệm và để quá trình cài đặt
Mã:
diễn ra suôn sẻ hơn một chút. Bạn nên xóa những người dùng ẩn danh này trước khi chuyển sang
Mã:
môi trường sản xuất.
Mã:
Mã:
Xóa người dùng ẩn danh? [Y/n][B]y[/b]
Mã:
... Thành công!
Mã:
Mã:
Thông thường, root chỉ được phép kết nối từ 'localhost'. Điều này
Mã:
đảm bảo rằng không ai có thể đoán được mật khẩu root từ mạng.
Mã:
Mã:
Không cho phép root đăng nhập từ xa? [Y/n][B]y[/b]
Mã:
... Thành công!
Mã:
Mã:
Theo mặc định, MariaDB đi kèm với một cơ sở dữ liệu có tên là 'test' mà bất kỳ ai cũng có thể
Mã:
truy cập. Điều này cũng chỉ dành cho mục đích thử nghiệm và nên được xóa
Mã:
trước khi chuyển sang môi trường sản xuất.
Mã:
Mã:
Xóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [Y/n][B]y[/b]
Mã:
- Đang xóa cơ sở dữ liệu thử nghiệm...
Mã:
... Thành công!
Mã:
- Đang xóa các đặc quyền trên cơ sở dữ liệu thử nghiệm...
Mã:
... Thành công!
Mã:
Mã:
Tải lại các bảng đặc quyền sẽ đảm bảo rằng tất cả các thay đổi đã thực hiện cho đến nay
Mã:
sẽ có hiệu lực ngay lập tức.
Mã:
Mã:
Tải lại các bảng đặc quyền ngay bây giờ? [Y/n] y
Mã:
... Thành công!
Mã:
Mã:
Đang dọn dẹp...
Mã:
Mã:
Xong! Nếu bạn đã hoàn tất tất cả các bước trên, thì việc cài đặt MariaDB
Mã:
của bạn hiện đã an toàn.
Mã:
Mã:
Cảm ơn bạn đã sử dụng MariaDB!
Mã:
mysql -h localhost -u root
Mã:
mysql -h localhost -u root –p
Tiếp theo, hãy đăng nhập vào bảng điều khiển cơ sở dữ liệu MariaDB, tạo cơ sở dữ liệu cho Prestashop và người dùng có mật khẩu sẽ được sử dụng để quản lý cơ sở dữ liệu Prestashop, bằng cách đưa ra các lệnh sau. Thay thế tên cơ sở dữ liệu PrestaShop, người dùng và mật khẩu cho phù hợp.
Mã:
mysql –u root -p
Mã:
create database my_shop;
cấp tất cả các quyền trên my_shop.* cho 'shop_user' được xác định bởi 'shop_password';
xóa quyền;
exit
Để áp dụng tất cả các thay đổi đã thực hiện cho đến nay, hãy khởi động lại daemon MySQL và Apache và xác minh xem daemon có đang chạy hay không bằng cách phát hành các lệnh sau.
Mã:
systemctl restart mysql apache2
Mã:
systemctl status mysql apache2
Cài đặt PrestaShop
Sau khi đáp ứng tất cả các yêu cầu hệ thống để cài đặt cửa hàng trực tuyến thương mại điện tử của bạn, hãy truy cập trang phát hành Prestashop tại GitHubhttps://github.com/PrestaShop/PrestaShop/releasesvà tải xuống tệp nén zip mới nhất bằng cách phát hành tiện ích wget, như minh họa trong mẫu sau.
Mã:
wget https://github.com/PrestaShop/PrestaShop/releases/download/1.7.2.3/prestashop_1.7.2.3.zip
Sau khi tải xuống tệp zip hoàn tất, hãy giải nén tệp zip Prestashop trực tiếp vào thư mục gốc của máy chủ web và liệt kê các tệp đã giải nén bằng cách sử dụng các lệnh bên dưới. Ngoài ra, hãy xóa tệp index.html mặc định được máy chủ web Apache cài đặt vào đường dẫn gốc web và xóa tệp info.php đã tạo trước đó.
Mã:
rm /var/www/html/index.html
Mã:
rm /var/www/html/info.php
Mã:
unzip prestashop_1.7.2.3.zip -d /var/www/html/
Mã:
ls /var/www/html/
Tiếp theo, thực hiện các lệnh bên dưới để cấp cho người dùng thời gian chạy Apache quyền ghi đầy đủ vào đường dẫn gốc web. Sử dụng lệnh ls để liệt kê các quyền cho các tệp cài đặt Prestashop nằm trong thư mục /var/www/html/.
Mã:
chown -R www-data:www-data /var/www/html/
Mã:
ls –al /var/www/html/
Tiến hành cài đặt Prestashop CMS bằng cách mở trình duyệt và điều hướng đến địa chỉ IP hoặc tên miền của máy chủ thông qua giao thức HTTPS. Trên màn hình cài đặt đầu tiên, tập lệnh cài đặt Prestashop sẽ mở rộng nội dung của tệp prestashop.zip từ đường dẫn gốc web của máy chủ web, như được hiển thị trong hình ảnh bên dưới.
Mã:
https://yourdomain.tld
Sau khi giải nén hoàn tất, bạn có thể chuyển sang dòng lệnh và liệt kê nội dung của thư mục /var/www/html/ để xem tất cả các tệp đã giải nén Prestashop.
Mã:
ls -la /var/www/html/
Trên màn hình tiếp theo, trình cài đặt Prestashop sẽ hiển thị màn hình chào mừng và yêu cầu bạn chọn ngôn ngữ cài đặt để tiếp tục quá trình cài đặt. Chọn ngôn ngữ của bạn và nhấn nút Tiếp theo để tiếp tục bước tiếp theo.
Trên màn hình cài đặt tiếp theo, hãy chọn ‘Tôi đồng ý với các điều khoản cấp phép’ và nhấn nút Tiếp theo để tiếp tục, như minh họa trong hình ảnh bên dưới.
Trình cài đặt Prestashop hiện sẽ thực hiện một loạt các kiểm tra để xác định khả năng tương thích với hệ thống và môi trường của bạn và sẽ liệt kê các lỗi có thể xảy ra, nếu tìm thấy. Nếu môi trường hệ thống của bạn tương thích với cài đặt PrestaShop, một thông báo màu xanh lá cây sẽ hiển thị trên trang web của bạn, như trong ảnh chụp màn hình bên dưới. Một lần nữa, hãy nhấn vào nút Tiếp theo để tiếp tục quá trình cài đặt.
Trên màn hình tiếp theo, hãy thêm thông tin bắt buộc về Cửa hàng của bạn, chẳng hạn như tên cửa hàng, hoạt động chính, quốc gia nơi cửa hàng của bạn được đăng ký và thông tin chi tiết về tài khoản. Cung cấp địa chỉ email để truy cập bảng điều khiển web phụ trợ Prestashop và mật khẩu mạnh sẽ được sử dụng cho tài khoản này, như trong ảnh chụp màn hình bên dưới. Khi bạn hoàn tất, hãy nhấn nút Tiếp theo để tiếp tục.
trên màn hình cài đặt tiếp theo, hãy thêm địa chỉ cơ sở dữ liệu MySQL, tên và thông tin đăng nhập đã tạo trước đó cho Prestashop, hãy nhấn vào nút 'Kiểm tra kết nối cơ sở dữ liệu của bạn ngay bây giờ'. Nếu kết nối với cơ sở dữ liệu MySQL thành công, hãy nhấn nút Tiếp theo để bắt đầu quá trình cài đặt.
Chờ vài phút để trình cài đặt điền thông tin cần thiết vào cơ sở dữ liệu và hoàn tất quá trình cài đặt, như trong ảnh chụp màn hình bên dưới.
Sau khi quá trình cài đặt hoàn tất, trình cài đặt sẽ hiển thị thông tin đăng nhập bảng quản trị web được sao lưu của bạn và các siêu liên kết cần thiết để truy cập Backend Office của Prestashop, sẽ được sử dụng để quản lý cửa hàng trực tuyến của bạn và Front Office của cửa hàng, sẽ được hiển thị cho khách hàng của bạn.
Hãy đảm bảo rằng bạn nhấn vào nút Quản lý Back Office để truy cập vào backend của cửa hàng. Bạn nên ghi lại hoặc đánh dấu trang địa chỉ Back Office của cửa hàng để đăng nhập vào bảng điều khiển quản trị web từ các trình duyệt khác trong tương lai.
Khi cố gắng đăng nhập vào Back Office, một thông báo cảnh báo như trong hình bên dưới sẽ thông báo cho bạn rằng bạn nên xóa thư mục cài đặt khỏi đường dẫn gốc web của miền.
Để có thể đăng nhập vào bảng điều khiển quản trị được Prestashop hỗ trợ, hãy quay lại bảng điều khiển máy chủ của bạn và thực hiện lệnh sau để xóa thư mục cài đặt Prestashop.
Mã:
rm -rf /var/www/html/install/
Khi đăng nhập lần đầu, một thông báo chào mừng sẽ hiển thị trên trình duyệt. Nhấn vào nút bắt đầu sẽ chuyển hướng bạn đến Catalog nơi bạn có thể bắt đầu thêm sản phẩm đầu tiên của mình, như được hiển thị trong ảnh chụp màn hình bên dưới.
Để truy cập trang web giao diện Prestashop, chỉ cần nhập tên miền của bạn vào trình duyệt và bạn sẽ được tự động chuyển hướng đến trang đầu tiên, như được mô tả trong ảnh chụp màn hình sau.
Tuy nhiên, hiện tại, bạn chỉ có thể truy cập vào cửa hàng mà không cần bảo mật thông qua giao thức HTTP không được mã hóa. Để bật hỗ trợ HTTPS trong Prestashop, hãy đăng nhập vào bảng điều khiển Back Office và điều hướng đến Cấu hình -> Tham số cửa hàng -> Chung và nhấn vào Vui lòng nhấp vào đây để kiểm tra xem cửa hàng của bạn có hỗ trợ liên kết HTTPS không, như minh họa trong hình ảnh bên dưới.
Sau khi thực hiện các bài kiểm tra SSL, hãy chuyển nút Bật SSL thành CÓ và cuộn xuống cuối trang và nhấn vào nút Lưu để áp dụng cấu hình. Tuy nhiên, cấu hình này cho đến nay chỉ bật hỗ trợ SSL cho liên kết Back Office. Các khách hàng sẽ truy cập vào tên miền cửa hàng của bạn sẽ được chuyển hướng qua các kết nối không được mã hóa.
Để bảo mật lưu lượng truy cập của khách truy cập qua tên miền của bạn, hãy chuyển nút Bật SSL trên tất cả các trang thành Có, như được hiển thị trong hình ảnh bên dưới và cuộn xuống và nhấn vào nút Lưu ở cuối trang để áp dụng các thiết lập.
Để kiểm tra xem khách hàng hiện có được tự động chuyển hướng để truy cập tên miền của bạn qua kết nối được bảo mật thông qua giao thức HTTPS hay không, hãy làm mới trang giao diện Prestashop hoặc nhập tên miền của bạn vào trình duyệt. Tên miền cửa hàng của bạn hiện có thể được truy cập thông qua giao thức HTTP, như được minh họa trong hình ảnh bên dưới.
Vậy là xong! Bạn đã cài đặt và cấu hình PrestaShop thành công trên Debian 9.1. Tuy nhiên, vì máy chủ Apache HTTP của bạn sử dụng chứng chỉ Tự ký để mã hóa lưu lượng giữa máy chủ và trình duyệt của khách truy cập, nên một thông báo cảnh báo sẽ luôn được tạo và hiển thị trong trình duyệt của họ khi họ lần đầu truy cập cửa hàng. Cảnh báo này không tốt cho hoạt động kinh doanh cửa hàng trực tuyến của bạn. Trong trường hợp này, bạn nên mua chứng chỉ do một Cơ quan cấp chứng chỉ đáng tin cậy cấp hoặc nhận một cặp chứng chỉ miễn phí từ Let’s Encrypt CA.
Để biết các cấu hình tùy chỉnh khác liên quan đến Prestashop, hãy truy cập trang tài liệu theo địa chỉ sau: http://doc.prestashop.com/display/PS17/Installing+PrestaShop