Đóng gói phar
phar là một loại tệp đóng gói tương tự như JAR trong PHP, bạn có thể sử dụng phar để đóng gói dự án webman của mình thành một tệp phar duy nhất, thuận tiện cho việc triển khai.
Xin gửi lời cảm ơn đặc biệt đến fuzqing vì PR của họ.
Lưu ý
Bạn cần tắt tùy chọn cấu hình phar trongphp.ini
, tức là thiết lậpphar.readonly = 0
Cài đặt công cụ dòng lệnh
composer require webman/console
Đóng gói
Thực hiện lệnh php webman build:phar
trong thư mục gốc của dự án webman
sẽ tạo một tệp webman.phar
trong thư mục bulid.
Cấu hình liên quan đến việc đóng gói nằm trong
config/plugin/webman/console/app.php
Lệnh khởi động và dừng liên quan
Khởi động
php webman.phar start
hoặc php webman.phar start -d
Dừng
php webman.phar stop
Kiểm tra trạng thái
php webman.phar status
Kiểm tra trạng thái kết nối
php webman.phar connections
Khởi động lại
php webman.phar restart
hoặc php webman.phar restart -d
Giải thích
-
Dự án đã đóng gói không hỗ trợ reload, việc cập nhật mã yêu cầu phải restart
-
Để tránh kích thước tệp đóng gói quá lớn chiếm quá nhiều bộ nhớ, bạn có thể thiết lập các tùy chọn
exclude_pattern
vàexclude_files
trongconfig/plugin/webman/console/app.php
để loại bỏ những tệp không cần thiết. -
Sau khi chạy webman.phar, một thư mục runtime sẽ được tạo trong thư mục nơi chứa webman.phar, dùng để lưu trữ các tệp tạm thời như nhật ký.
-
Nếu dự án của bạn sử dụng tệp .env, cần đặt tệp .env trong thư mục nơi chứa webman.phar.
-
Không bao giờ lưu trữ các tệp người dùng đã tải lên trong gói phar, vì việc thao tác tệp người dùng đã tải lên bằng giao thức
phar://
là rất nguy hiểm (lỗ hổng deserialization phar). Các tệp người dùng đã tải lên phải được lưu trữ riêng trên đĩa bên ngoài gói phar, xem thêm bên dưới. -
Nếu doanh nghiệp của bạn cần tải tệp lên thư mục public, cần tách riêng thư mục public và đặt nó trong thư mục chứa webman.phar, khi đó cần cấu hình
config/app.php
.'public_path' => base_path(false) . DIRECTORY_SEPARATOR . 'public',
Doanh nghiệp có thể sử dụng hàm trợ giúp
public_path($vị trí_rel_file)
để tìm vị trí thực tế của thư mục public. -
Lưu ý rằng webman.phar không hỗ trợ việc khởi động tiến trình tùy chỉnh trên windows.