Cài đặt dự án Webman trên Panel Baota
0. Yêu cầu môi trường
- PHP >= 8.1
1. Tạo dự án
cd /www/wwwroot
composer create-project workerman/webman:~2.0
2. Cài đặt website
Lưu ý:
Baota sẽ tự động bảo vệ tiến trình, dòng lệnh khởi động làphp /www/wwwroot/webman/start.php start
, không thêm tham số-d
, nếu không sẽ không khởi động được.
3. Cấu hình trang web
4. Thiết lập thư mục chạy
Lưu ý:
Để đảm bảo an toàn cho hệ thống, thư mục chạy phải được thiết lập là/public
, cấu hình sai có thể dẫn đến việc các tập tin nhạy cảm bị truy cập từ mạng ngoài.
5. Thiết lập tĩnh ảo
# Chuyển tiếp yêu cầu đến webman
location ^~ / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
proxy_set_header Connection "";
if (!-f $request_filename){
proxy_pass http://127.0.0.1:8787;
}
}
# Từ chối truy cập tất cả các file kết thúc bằng .php
location ~ \.php$ {
return 404;
}
# Cho phép truy cập thư mục .well-known
location ~ ^/\.well-known/ {
allow all;
}
# Từ chối truy cập tất cả các file hoặc thư mục bắt đầu bằng .
location ~ /\. {
return 404;
}
6. Cấp quyền ghi cho runtime
chmod -R 777 /www/wwwroot/webman/runtime
Ghi chú
Bước này thường không cần thiết, có thể là bug của Baota, dịch vụ được thiết lập với người dùngwww
, nhưng thực tế là người dùng daemon khởi động, dẫn đến không thể ghi vào thư mục runtime.
7. Khởi động lại dịch vụ
8. Truy cập trang web
Truy cập trang web http://example.com
sẽ thấy trang chào mừng của webman.
Khắc phục sự cố
-
Trang web không thể truy cập báo lỗi 502 Bad Gateway
Kiểm tra xem webman có khởi động hay không. -
webman khởi động không thành công
Như trong hình, kiểm tra xem có nhật ký lỗi hay không.