Fuel CMS là một hệ thống quản lý nội dung nguồn mở dành cho các trang web và blog cao cấp. Hệ thống này được xây dựng trên CodeIgniter, một khuôn khổ web PHP phổ biến. Hướng dẫn này sẽ trình bày cách cài đặt Fuel CMS trên máy chủ chạy Fedora 31.
Khi ở dấu nhắc, hãy nhập các lệnh sau để thiết lập cơ sở dữ liệu có tên fuelcms và người dùng cơ sở dữ liệu có tên fueluser và cấp cho người dùng đó quyền truy cập vào cơ sở dữ liệu.
Bây giờ, chúng ta cần cài đặt PHP 7.3 cùng với PHP 7.4. Bạn có thể dễ dàng thực hiện lệnh sau.
Lệnh này cài đặt PHP 7.3 dưới dạng một bộ sưu tập cho phép bạn chạy đồng thời với PHP 7.4.
Khởi động và bật dịch vụ PHP 7.3.
Để kiểm tra xem lệnh đã được cài đặt đúng chưa, hãy chạy lệnh sau.
Mở tệp
Chúng ta cần đặt người dùng/nhóm Unix của các quy trình PHP thành nginx. Tìm các dòng
Ngoài ra, hãy định vị biến listen.acl_users và thay đổi giá trị của nó như sau.
Ngoài ra, hãy ghi chú biến listen. Nó sẽ cung cấp cho bạn đường dẫn đến nơi lắng nghe quy trình PHP-FPM. Đối với chúng tôi, nó hiển thị như sau.
Sao chép đường dẫn vì chúng tôi sẽ cần nó.
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Khởi động lại quy trình PHP-fpm.
Dán mã sau vào biên tập viên.
Tệp này giả định rằng chúng ta sẽ cài đặt Fuel CMS vào miền
Kích hoạt tệp cấu hình này bằng cách liên kết tệp đó với thư mục
Kiểm tra cấu hình Nginx.
Bạn sẽ thấy đầu ra sau cho biết cấu hình của bạn là chính xác.
Tải lại dịch vụ Nginx.
Đối số -p đảm bảo rằng các thư mục cha
Điều hướng đến thư mục gốc tài liệu.
Lấy phiên bản mới nhất của Fuel CMS từ kho lưu trữ Git của nó.
Giải nén tệp vào thư mục
Tạo thư mục
Mở tệp
Cấu hình các tham số cơ sở dữ liệu mà chúng ta đã tạo trước đó.
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Nhập tệp
Tạo khóa mã hóa ngẫu nhiên bằng OpenSSL. Bạn có thể sử dụng bất kỳ số nào thay vì 20.
Bạn sẽ nhận được khóa ngẫu nhiên làm đầu ra. Sao chép nó.
Mở tệp
Thay đổi giá trị của $config[‘encryption_key’] thành khóa bạn lấy được từ bước trước.
Tiếp theo,xác định vị trí giá trị$config['sess_save_path'] và thay đổi giá trị của nó từ NULL thành đường dẫn phiên mà chúng ta đã tạo ở trên.
APPPATH ở đây đề cập đến thư mục
Tiếp theo, chúng ta cần bật bảng điều khiển Quản trị. Để làm như vậy, hãy mở tệp
Thực hiện thay đổi sau.
Đặt fuel_mode thành auto cho phép Fuel CMS kiểm tra cơ sở dữ liệu của nó trước để tìm trang và nếu không tìm thấy, nó sẽ chọn trang từ thư mục xem của nó. Bạn có thể thay đổi nhiều cài đặt khác như tên của trang web trong bảng điều khiển Quản trị, kích thước tải lên hình ảnh, đặt email, kích thước tải lên tệp, chọn trình soạn thảo văn bản, đặt công cụ phân tích cú pháp và cấu hình của nó cũng như đặt danh sách các mô-đun được phép.
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Bước cuối cùng là cấp quyền thích hợp cho thư mục
Quá trình thiết lập hiện đã hoàn tất. Mở
Trên trang mở ra, bạn có thể thay đổi mật khẩu của mình. Bạn cũng nên thay đổi tên người dùng mặc định và thêm địa chỉ email. Bạn cũng sẽ phải điền tên của mình để tiếp tục. Lưu để tiếp tục khi bạn hoàn tất.
Để biết thêm thông tin, hãy tham khảo tài liệu chính thức của Fuel CMS.
Cài đặt Certbot.
Cài đặt chứng chỉ.
Nếu đây là lần đầu tiên bạn sử dụng công cụ này trên máy chủ này, bạn cần đồng ý với các điều khoản và nhập địa chỉ email của mình. Hãy nói không khi được hỏi bạn có muốn chia sẻ email của mình với tổ chức EFF không.
Nếu thành công,
Chọn 2 rồi nhấn
Chạy lệnh sau để thiết lập gia hạn tự động.
Khởi chạy
Điều kiện tiên quyết
-
Máy chủ chạy Fedora 31 được cấu hình với LEMP Stack. Bạn có thểlàm theo hướng dẫn của chúng tôi để thực hiện.
-
Người dùng sudo không phải root.
-
Đảm bảo mọi thứ đã được cập nhật.
Mã:
$ sudo dnf upgrade
Cấu hình MariaDB cho Fuel CMS
Đầu tiên, chúng ta cần thiết lập cơ sở dữ liệu để sử dụng cho Fuel CMS. Để thực hiện điều đó, hãy đăng nhập vào dấu nhắc MySQL.
Mã:
$ sudo mysql
Mã:
mysql> CREATE DATABASE fuelcms;mysql> CREATE USER 'fueluser'@'localhost' IDENTIFIED BY 'yourpassword';mysql> CẤP TẤT CẢ CÁC QUYỀN TRÊN fuelcms.* CHO 'fueluser'@'localhost';mysql> exit
Cấu hình PHP cho Fuel CMS
Trong hướng dẫn của chúng tôi, chúng tôi đã cài đặt PHP 7.4 nhưng Fuel CMS vẫn chưa tương thích với nó tại thời điểm hướng dẫn này. Khi nó trở nên tương thích, bạn có thể bỏ qua bước này.Bây giờ, chúng ta cần cài đặt PHP 7.3 cùng với PHP 7.4. Bạn có thể dễ dàng thực hiện lệnh sau.
Mã:
$ sudo dnf install php73-php-fpm php73-php-mysqlnd php73-php-cli -y
Khởi động và bật dịch vụ PHP 7.3.
Mã:
$ sudo systemctl start php73-php-fpm$ sudo systemctl enable php73-php-fpm
Mã:
$ php73 --versionPHP 7.3.16 (cli) (được xây dựng: 17 tháng 3 năm 2020 10:18:38) ( NTS )Bản quyền (c) 1997-2018 Nhóm PHPZend Engine v3.3.16, Bản quyền (c) 1998-2018 Zend Technologies
/etc/opt/remi/php73/php-fpm.d/www.conf
.
Mã:
$ sudo nano /etc/opt/remi/php73/php-fpm.d/www.conf
user=apache
và group=apache
trong tệp và đổi chúng thành nginx.
Mã:
...; Người dùng/nhóm quy trình Unix; Lưu ý: Người dùng là bắt buộc. Nếu nhóm không được đặt, nhóm người dùng mặc định; sẽ được sử dụng.; RPM: người dùng apache được chọn để cung cấp quyền truy cập vào cùng thư mục với httpduser = nginx; RPM: Giữ một nhóm được phép ghi vào thư mục nhật ký.group = nginx...
Mã:
listen.acl_users = nginx
Mã:
listen = /var/opt/remi/php73/run/php-fpm/www.sock
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Khởi động lại quy trình PHP-fpm.
Mã:
$ sudo systemctl restart php73-php-fpm
Cấu hình Nginx
Chạy lệnh sau để thêm tệp cấu hình cho Fuel CMS.
Mã:
$ sudo nano /etc/nginx/sites-available/fuel.conf
Mã:
máy chủ { lắng nghe 80; lắng nghe [::]:80; gốc /var/www/fuel; chỉ mục index.php index.html index.htm; tên máy chủ fuel.example.com; kích thước thân máy tối đa của máy khách 100M; vị trí / { try_files $uri $uri/ /index.php?q=$uri&$args; }
access_log /var/log/nginx/fuel.example.com.access.log;
error_log /var/log/nginx/fuel.example.com.error.log; vị trí ~ \.php$ { fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param TÊN_TỆP_KẾ_ĐỊNH $document_root$fastcgi_script_name; include fastcgi_params; }}
example.com
và trong thư mục /var/www/fuel
.Chúng ta cũng đã sử dụng giá trị của biếnlisten ở trên để chỉ định giá trị cho fastcgi_pass.Kích hoạt tệp cấu hình này bằng cách liên kết tệp đó với thư mục
sites-enabled
.
Mã:
$ sudo ln -s /etc/nginx/sites-available/fuel.conf /etc/nginx/sites-enabled/
Mã:
$ sudo nginx -t
Mã:
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
Mã:
$ sudo systemctl reload nginx
Cài đặt Fuel CMS
Tạo thư mục gốc tài liệu trống cho Fuel CMS.
Mã:
$ sudo mkdir -p /var/www/fuel
var
và www
được tự động tạo nếu chúng không tồn tại.Điều hướng đến thư mục gốc tài liệu.
Mã:
$ cd /var/www/fuel
Mã:
$ sudo wget https://github.com/daylightstudio/FUEL-CMS/archive/master.zip
/var/www/fuel
.
Mã:
$ sudo unzip master.zip$ sudo rm master.zip$ sudo mv FUEL-CMS-master/* .$ sudo rm -r FUEL-CMS-master
sessions
.
Mã:
$ sudo mkdir /var/www/fuel/fuel/application/sessions
/var/www/fuel/application/config/database.php
.
Mã:
$ sudo nano /var/www/fuel/fuel/application/config/database.php
Mã:
$db['default'] = array( 'dsn' => '', 'hostname' => 'localhost', 'username' => 'fueluser', 'password' => 'yourpassword', 'database' => 'fuelcms', 'dbdriver' => 'mysqli',
Nhập tệp
/var/www/fuel/install/fuel_schema.sql
vào cơ sở dữ liệu mới tạo.
Mã:
$ mysql -u fueluser -p fuelcms < /var/www/fuel/fuel/install/fuel_schema.sql
Mã:
$ openssl rand -base64 20
Mở tệp
/var/www/fuel/fuel/application/config/config.php
.
Mã:
$ sudo nano /var/www/fuel/fuel/application/config/config.php
Mã:
$config['encryption_key'] = 'nisT56baLm+U24ZYFRvVbVKIdOE=';
Mã:
$config['sess_save_path'] = APPPATH.'sessions/';
/var/www/fuel/fuel/applications/
. Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.Tiếp theo, chúng ta cần bật bảng điều khiển Quản trị. Để làm như vậy, hãy mở tệp
/var/www/fuel/fuel/application/config/MY_fuel.php
.
Mã:
$ sudo nano /var/www/fuel/fuel/application/config/MY_fuel.php
Mã:
// cho dù phần quản trị phụ trợ có được bật hay không$config['admin_enabled'] = TRUE;....$config['fuel_mode'] = 'tự động';
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.
Bước cuối cùng là cấp quyền thích hợp cho thư mục
/var/www/fuel
.
Mã:
sudo chown -R nginx:nginx /var/www/fuel
fuel.example.com/fuel
trong trình duyệt của bạn và đăng nhập bằng thông tin đăng nhập bạn đã tạo ở trên và bắt đầu phát triển.Cấu hình Fuel CMS
Sau khi đăng nhập vào bảng quản trị, bạn sẽ được nhắc thay đổi mật khẩu. Nhấp vào Đổi mật khẩu để tiếp tục.Trên trang mở ra, bạn có thể thay đổi mật khẩu của mình. Bạn cũng nên thay đổi tên người dùng mặc định và thêm địa chỉ email. Bạn cũng sẽ phải điền tên của mình để tiếp tục. Lưu để tiếp tục khi bạn hoàn tất.
Để biết thêm thông tin, hãy tham khảo tài liệu chính thức của Fuel CMS.
Thiết lập HTTPS bằng Let's Encrypt
Để sử dụng Let's Encrypt, chúng ta cần cài đặt gói Certbot.Cài đặt Certbot.
Mã:
$ sudo dnf install certbot certbot-nginx -y
Mã:
$ sudo certbot --nginx -d fuel.example.com
Nếu thành công,
certbot
sẽ hỏi bạn muốn định cấu hình cài đặt HTTPS như thế nào.
Mã:
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):
ENTER
. Chứng chỉ của bạn hiện đã được cài đặt và kích hoạt.Chạy lệnh sau để thiết lập gia hạn tự động.
Mã:
$ echo "0 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew" | sudo tee -a /etc/crontab > /dev/null
https://fuel.example.com
trong trình duyệt của bạn để kiểm tra.