Cách cài đặt Concrete5 CMS với Apache và Let's Encrypt SSL miễn phí trên Ubuntu 20.04

theanh

Administrator
Nhân viên
Concrete5 là một hệ thống quản lý nội dung nguồn mở được sử dụng để xuất bản nội dung trên internet. Nó được viết bằng PHP và sử dụng MariaDB làm cơ sở dữ liệu phụ trợ. Nó cung cấp một trình xây dựng dễ sử dụng giúp bạn tạo các trang và nội dung thông qua trình duyệt web. Nó linh hoạt, an toàn, sẵn sàng cho thiết bị di động và dựa trên kiến trúc Model-View-Controller. Nó cung cấp một bộ tính năng phong phú bao gồm trình soạn thảo nội dung WYSIWYG, Trình quản lý phương tiện, Nội dung kéo và thả, Chỉnh sửa trong ngữ cảnh và nhiều tính năng khác.

Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách cài đặt Concrete5 CMS với Apache và Let's Encrypt SSL trên máy chủ Ubuntu 20.04.

Yêu cầu​

  • Một máy chủ chạy Ubuntu 20.04.
  • Một tên miền hợp lệ trỏ đến IP máy chủ.
  • Một mật khẩu gốc được cấu hình trên máy chủ của bạn.

Bắt đầu​

Đầu tiên, bạn sẽ cần cập nhật chỉ mục gói APT lên phiên bản mới nhất. Bạn có thể cập nhật bằng lệnh sau:
Mã:
apt-get update -y
Sau khi chỉ mục APT được cập nhật, bạn có thể tiến hành bước tiếp theo.

Cài đặt Apache, MariaDB và PHP​

Tiếp theo, bạn sẽ cần cài đặt máy chủ web Apache, máy chủ cơ sở dữ liệu MariaDB, PHP và các tiện ích mở rộng PHP khác vào máy chủ của bạn. Bạn có thể cài đặt tất cả chúng bằng lệnh sau:
Mã:
apt-get install apache2 mariadb-server php libapache2-mod-php libapache2-mod-php php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-intl php-mysql php-cli php-ldap php-zip php-curl -y
Sau khi tất cả các gói được cài đặt, hãy chỉnh sửa tệp php.ini và đặt các giá trị mong muốn:
Mã:
nano /etc/php/7.4/apache2/php.ini
Thay đổi các mục sau dòng:
Mã:
file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 64M
date.timezone = Asia/Kolkata
Lưu và đóng tệp khi bạn hoàn tất, sau đó khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart apache2
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tạo Cơ sở dữ liệu Concrete5​

Tiếp theo, bạn sẽ cần tạo cơ sở dữ liệu và người dùng cho Concrete5. Đầu tiên, đăng nhập vào MariaDB bằng lệnh sau:
Mã:
mysql
Sau khi đăng nhập, tạo cơ sở dữ liệu và người dùng bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE concrete5;
MariaDB [(none)]> CREATE USER 'concrete5user'@'localhost' IDENTIFIED BY 'password';
Tiếp theo, cấp tất cả các đặc quyền cho cơ sở dữ liệu Concrete5 bằng lệnh sau lệnh:
Mã:
MariaDB [(none)]> GRANT ALL ON concrete5.* TO 'concrete5user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Tiếp theo, xóa các đặc quyền và thoát khỏi bảng điều khiển MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tải xuống Concrete5 CMS​

Đầu tiên, hãy truy cập trang web Concrete5 CMS sao chép URL của phiên bản mới nhất Concrete5 và tải xuống bằng lệnh sau:
Mã:
wget --trust-server-names https://www.concrete5.org/download_file/-/view/115589/ -O concrete5.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
unzip concrete5.zip
Tiếp theo, di chuyển thư mục đã giải nén đến thư mục gốc web Apache bằng lệnh sau lệnh:
Mã:
mv concrete5-* /var/www/html/concrete5
Tiếp theo, thiết lập quyền và quyền sở hữu thích hợp cho thư mục concrete5 bằng lệnh sau:
Mã:
chown -R www-data:www-data /var/www/html/concrete5/
chmod -R 755 /var/www/html/concrete5/
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho Concrete5 CMS​

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Apache cho Concrete5 CMS. Bạn có thể tạo tệp này bằng lệnh sau:
Mã:
nano /etc/apache2/sites-available/concrete5.conf
Thêm các dòng sau:
Mã:
 ServerAdmin [emailprotected] DocumentRoot /var/www/html/concrete5/ ServerName concrete5.example.com  Options +FollowSymlinks AllowOverride All Require all granted  ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
Lưu và đóng tệp, sau đó bật máy chủ ảo Apache và viết lại mô-đun bằng lệnh sau:
Mã:
a2ensite concrete5.conf
a2enmod rewrite
Tiếp theo, khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart apache2
Bạn cũng có thể kiểm tra trạng thái của dịch vụ Apache bằng cách sử dụng lệnh sau lệnh:
Mã:
systemctl status apache2
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2021-05-15 15:00:03 UTC; 4s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 15566 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 15585 (apache2) Tasks: 6 (limit: 2353) Memory: 13.5M CGroup: /system.slice/apache2.service ??15585 /usr/sbin/apache2 -k start ??15586 /usr/sbin/apache2 -k start ??15587 /usr/sbin/apache2 -k start ??15588 /usr/sbin/apache2 -k start ??15589 /usr/sbin/apache2 -k start ??15590 /usr/sbin/apache2 -k start
May 15 15:00:03 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...
Tại thời điểm này, máy chủ web Apache được cấu hình để lưu trữ Concrete5 CMS. Bây giờ bạn có thể tiến hành bước tiếp theo.

Truy cập Giao diện Web Concrete5 CMS​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web Concrete5 CMS bằng URL . Bạn sẽ được chuyển hướng đến trang sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22386%22%3E%3C/svg%3E


Chọn ngôn ngữ của bạn và nhấp vào nút Mũi tên. Bạn sẽ thấy trang sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22388%22%3E%3C/svg%3E


Hãy đảm bảo rằng tất cả các thư viện cần thiết đã được cài đặt, sau đó nhấp vào nút Tiếp tục cài đặt, bạn sẽ thấy trang sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22393%22%3E%3C/svg%3E


Tại đây, cung cấp tên người dùng, mật khẩu Admin, tên người dùng cơ sở dữ liệu, mật khẩu và tên cơ sở dữ liệu, sau đó nhấp vào nút Cài đặt Concrete5 để bắt đầu cài đặt. Sau khi cài đặt hoàn tất, bạn sẽ thấy trang sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22388%22%3E%3C/svg%3E





data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22388%22%3E%3C/svg%3E


Bây giờ, hãy nhấp vào nút Chỉnh sửa trang web của bạn, bạn sẽ thấy bảng điều khiển Concrete5 trên trang sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22411%22%3E%3C/svg%3E

Bảo mật Concrete5 bằng Let's Encrypt SSL​

Tiếp theo, bạn nên bảo mật trang web của mình bằng Let's Encrypt SSL. Trước tiên, hãy cài đặt ứng dụng khách Certbot bằng lệnh sau:
Mã:
apt-get install python3-certbot-apache -y
Sau khi cài đặt, hãy chạy lệnh sau để bảo mật trang web của bạn bằng Let's Encrypt SSL:
Mã:
certbot --apache -d concrete5.example.com
Bạn sẽ được yêu cầu cung cấp email và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Mã:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [emailprotected]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for concrete5.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/concrete5-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/concrete5-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/concrete5-le-ssl.conf
Tiếp theo, chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không như hiển thị bên dưới:
Mã:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Nhập 2 và nhấn Enter để cài đặt Let's Encrypt SSL cho bạn trang web:
Mã:
Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/concrete5.conf to ssl vhost in /etc/apache2/sites-available/concrete5-le-ssl.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://concrete5.example.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=concrete5.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/concrete5.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/concrete5.example.com/privkey.pem Your cert will expire on 2020-10-23. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Bây giờ, bạn có thể truy cập Concrete 5 một cách an toàn bằng cách sử dụng URL .

Kết luận​

Trong hướng dẫn trên, bạn đã học cách cài đặt Concrete5 CMS với Apache và Let's Encrypt SSL trên Ubuntu 20.04. Bây giờ, bạn có thể dễ dàng xuất bản nội dung của mình trên internet bằng Concrete5 CMS. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên