Yêu cầu về máy chủ
Trước khi cài đặt Flarum, điều quan trọng là phải kiểm tra xem máy chủ của bạn có đáp ứng các yêu cầu hay không. Để chạy Flarum, bạn sẽ cần:
- Apache (đã bật mod_rewrite) hoặc Nginx
- PHP 7.3+ với các phần mở rộng sau: curl, dom, fileinfo, gd, json, mbstring, openssl, pdo_mysql, tokenizer, zip
- MySQL 5.6+/8.0.23+ hoặc MariaDB 10.0.5+
- Quyền truy cập SSH (dòng lệnh) để chạy các lệnh bảo trì phần mềm có thể cần thiết và Composer nếu bạn định sử dụng dòng lệnh để cài đặt và quản lý các phần mở rộng Flarum.
Cài đặt
Cài đặt bằng cách giải nén tệp lưu trữ
Nếu bạn không có quyền truy cập SSH vào máy chủ của mình hoặc bạn không muốn sử dụng dòng lệnh, bạn có thể cài đặt Flarum bằng cách giải nén tệp lưu trữ. Dưới đây là danh sách các tệp lưu trữ khả dụng, hãy đảm bảo rằng bạn chọn tệp phù hợp với phiên bản PHP và đường dẫn công khai của mình hoặc không có tùy chọn nào.
Cài đặt bằng Giao diện dòng lệnh
Flarum sử dụng Composer để quản lý các phần phụ thuộc và tiện ích mở rộng của nó. Nếu bạn không quen với nó, hãy đọc hướng dẫn của chúng tôi để biết thông tin về nó là gì và cách thiết lập nó. Sau đó, chạy lệnh này ở một vị trí trống mà bạn muốn cài đặt Flarum:
composer create-project flarum/flarum .
Trong khi lệnh này đang chạy, bạn có thể cấu hình máy chủ web của mình. Bạn sẽ cần đảm bảo rằng webroot của mình được đặt thành /path/to/your/forum/public
và thiết lập URL Rewriting theo hướng dẫn bên dưới.
Khi mọi thứ đã sẵn sàng, hãy điều hướng đến diễn đàn của bạn trong trình duyệt web và làm theo hướng dẫn để hoàn tất cài đặt.
Nếu bạn muốn cài đặt và cập nhật tiện ích mở rộng từ bảng điều khiển quản trị, bạn cũng cần cài đặt tiện ích mở rộng Extension Manager.
composer require flarum/extension-manager:*
Warning
Trình quản lý tiện ích mở rộng cho phép người dùng quản trị cài đặt bất kỳ gói composer nào. Chỉ cài đặt trình quản lý tiện ích mở rộng nếu bạn tin tưởng tất cả quản trị viên diễn đàn của mình có các quyền như vậy.
Viết lại URL
Apache
Flarum bao gồm tệp .htaccess
trong thư mục public
– hãy đảm bảo rằng tệp này đã được tải lên đúng cách. Flarum sẽ không hoạt động bình thường nếu mod_rewrite
không được bật hoặc .htaccess
không được phép. Hãy đảm bảo kiểm tra với nhà cung cấp dịch vụ lưu trữ (hoặc VPS) của bạn để đảm bảo các tính năng này được bật. Nếu bạn đang quản lý máy chủ của riêng mình, bạn có thể cần thêm nội dung sau vào cấu hình trang web của mình để bật các tệp .htaccess
:
<Directory "/path/to/flarum/public">
AllowOverride All
</Directory>
Điều này đảm bảo rằng các ghi đè htaccess được phép để Flarum có thể ghi đè URL đúng cách.
Các phương pháp để bật mod_rewrite
khác nhau tùy thuộc vào hệ điều hành của bạn. Bạn có thể bật nó bằng cách chạy sudo a2enmod rewrite
trên Ubuntu. mod_rewrite
được bật theo mặc định trên CentOS. Đừng quên khởi động lại Apache sau khi thực hiện các sửa đổi!
Nginx
Flarum bao gồm tệp .nginx.conf
– hãy đảm bảo tệp này đã được tải lên đúng cách. Sau đó, giả sử bạn đã thiết lập một trang web PHP trong Nginx, hãy thêm nội dung sau vào khối cấu hình máy chủ của bạn:
include /path/to/flarum/.nginx.conf;
Caddy
Caddy yêu cầu cấu hình rất đơn giản để Flarum hoạt động bình thường. Lưu ý rằng bạn nên thay thế URL bằng URL của riêng bạn và đường dẫn bằng đường dẫn đến thư mục public
của riêng bạn. Nếu bạn đang sử dụng phiên bản PHP khác, bạn cũng sẽ cần thay đổi đường dẫn fastcgi
để trỏ đến socket hoặc URL cài đặt PHP chính xác của bạn.
www.example.com {
root * /var/www/flarum/public
php_fastcgi unix//var/run/php/php7.4-fpm.sock
header /assets/* {
+Cache-Control "public, must-revalidate, proxy-revalidate"
+Cache-Control "max-age=25000"
Pragma "public"
}
file_server
}
Quyền sở hữu thư mục
Trong quá trình cài đặt, Flarum có thể yêu cầu bạn thiết lập một số thư mục có thể ghi.
Các hệ điều hành hiện đại thường là nhiều người dùng, nghĩa là người dùng mà bạn đăng nhập không giống với người dùng mà Flarum đang chạy.
Người dùng mà Flarum đang chạy PHẢI có quyền đọc + ghi vào:
- Thư mục cài đặt gốc, để Flarum có thể chỉnh sửa
config.php
.
- Thư mục con
storage
, để Flarum có thể chỉnh sửa nhật ký và lưu trữ dữ liệu được lưu trong bộ nhớ đệm.
- Thư mục con
assets
, để logo và ảnh đại diện có thể được tải lên hệ thống tệp.
Tiện ích mở rộng có thể yêu cầu các thư mục khác, do đó bạn có thể muốn cấp quyền ghi đệ quy cho toàn bộ thư mục cài đặt gốc Flarum.
Có một số lệnh bạn cần chạy để thiết lập quyền tệp. Xin lưu ý rằng nếu cài đặt của bạn không hiển thị cảnh báo sau khi thực hiện một số lệnh này, bạn không cần chạy phần còn lại.
Trước tiên, bạn cần cho phép quyền ghi vào thư mục. Trên Linux:
chmod 775 -R /path/to/directory
Nếu điều đó vẫn chưa đủ, bạn có thể cần kiểm tra xem tệp của mình có thuộc sở hữu của nhóm và người dùng chính xác hay không. Theo mặc định, trong hầu hết các bản phân phối Linux, www-data
là nhóm và người dùng mà cả PHP và máy chủ web đều hoạt động theo. Bạn cần xem xét thông số cụ thể của bản phân phối và thiết lập máy chủ web của mình để đảm bảo. Bạn có thể thay đổi quyền sở hữu thư mục trong hầu hết các hệ điều hành Linux bằng cách chạy:
chown -R www-data:www-data /path/to/directory
Với www-data
được đổi thành thứ khác nếu người dùng/nhóm khác được sử dụng cho máy chủ web của bạn.
Ngoài ra, bạn sẽ cần đảm bảo rằng người dùng CLI của bạn (người mà bạn đã đăng nhập vào terminal) có quyền sở hữu, để bạn có thể cài đặt tiện ích mở rộng và quản lý cài đặt Flarum qua CLI. Để thực hiện việc này, hãy thêm người dùng hiện tại của bạn (whoami
) vào nhóm máy chủ web (thường là www-data
) qua usermod -a -G www-data YOUR_USERNAME
. Bạn có thể sẽ cần phải đăng xuất và đăng nhập lại để thay đổi này có hiệu lực.
Cuối cùng, nếu cách đó không hiệu quả, bạn có thể cần phải cấu hình SELinux để cho phép máy chủ web ghi vào thư mục. Để thực hiện, hãy chạy:
chcon -R -t httpd_sys_rw_content_t /path/to/directory
Để tìm hiểu thêm về các lệnh này cũng như quyền và quyền sở hữu tệp trên Linux, hãy đọc hướng dẫn này. Nếu bạn đang thiết lập Flarum trên Windows, bạn có thể thấy câu trả lời cho câu hỏi của Super User này hữu ích.
Môi trường có thể thay đổi
Môi trường của bạn có thể khác với tài liệu được cung cấp, vui lòng tham khảo cấu hình máy chủ web hoặc nhà cung cấp dịch vụ lưu trữ web để biết người dùng và nhóm phù hợp mà PHP và máy chủ web hoạt động.
Không bao giờ sử dụng quyền 777
Bạn không bao giờ nên đặt bất kỳ thư mục hoặc tệp nào ở mức quyền 777
, vì mức quyền này cho phép bất kỳ ai truy cập vào nội dung của thư mục và tệp bất kể người dùng hay nhóm.
Tùy chỉnh Đường dẫn
Theo mặc định, cấu trúc thư mục của Flarum bao gồm một thư mục public
chỉ chứa các tệp có thể truy cập công khai. Đây là biện pháp bảo mật tốt nhất, đảm bảo rằng tất cả các tệp mã nguồn nhạy cảm đều không thể truy cập được hoàn toàn từ gốc web.
Tuy nhiên, nếu bạn muốn lưu trữ Flarum trong một thư mục con (như yoursite.com/forum
), hoặc nếu máy chủ của bạn không cho bạn quyền kiểm soát webroot của mình (bạn bị kẹt với thứ gì đó như public_html
hoặc htdocs
), bạn có thể thiết lập Flarum mà không cần thư mục public
.
Nếu bạn định cài đặt Flarum bằng một trong các kho lưu trữ, bạn chỉ cần sử dụng no-public-dir
(Public Path = No) archives và bỏ qua phần còn lại của phần này. Nếu bạn đang cài đặt thông qua Composer, bạn sẽ cần làm theo các hướng dẫn bên dưới.
Chỉ cần di chuyển tất cả các tệp bên trong thư mục public
(bao gồm .htaccess
) vào thư mục mà bạn muốn phục vụ Flarum. Sau đó, chỉnh sửa .htaccess
và bỏ chú thích các dòng 9-15 để bảo vệ các tài nguyên nhạy cảm. Đối với Nginx, bỏ chú thích các dòng 8-11 của .nginx.conf
.
Bạn cũng sẽ cần chỉnh sửa tệp index.php
và thay đổi dòng sau:
$site = require './site.php';
Chỉnh sửa site.php
và cập nhật các đường dẫn trong các dòng sau để phản ánh cấu trúc thư mục mới của bạn:
'base' => __DIR__,
'public' => __DIR__,
'storage' => __DIR__.'/storage',
Cuối cùng, hãy kiểm tra config.php
và đảm bảo giá trị url
là chính xác.