Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bổ sung tính năng quản lý file mồ côi, file trùng lặp trong module upload để tiện xóa file khỏi hosting #3529

Open
3 tasks
thehung opened this issue Dec 13, 2022 · 2 comments

Comments

@thehung
Copy link
Contributor

thehung commented Dec 13, 2022

Hiện giờ NukeViet không có chức năng xóa các file "mồ côi" (file không được sử dụng trên thực tế)
Các site lớn, nhiều admin, có người upload file tùy tiện, có người xóa bài nhưng không có thói quen tìm và xóa file khiến cho host (server) xuất hiện nhiều file rác. Do đó cần các tính năng:

Quản lý file mồ côi

File mồ côi là không được sử dụng trên thực tế. Hệ thống cần tìm, liệt kê toàn bộ các file mồ côi để cho phép người quản trị xóa toàn bộ hoặc xóa từng file, xóa theo kết quả lọc (thư mục, loại file, người upload...) hoặc xóa một số file được lựa chọn.

image

Các tính năng cần bổ sung:

  • Rà soát và quản lý các file mồ côi.
  • Tuỳ chọn hiển thị các file mồ côi trong trình quản lý file của NukeViet (module Upload)
  • Bổ sung 1 mục chung (Đặt tên là "Lọc toàn bộ file mồ côi", đặt phía trên thư mục upload) để hiển thị tất cả các file mồ côi (bên cạnh việc duyệt file mồ côi theo thư mục).
    Các thao tác quản lý file xử lý như là quản lý file trong thư mục thông thường:
  • Thao tác lọc và hiển thị file:
    image
  • Thao tác chọn và xóa file mồ côi:
    image

Bổ sung tính năng sắp xếp theo dung lượng file

Mục đích: Để tiện việc xóa các file dung lượng lớn
image

@hoaquynhtim99
Copy link
Contributor

hoaquynhtim99 commented Dec 13, 2022

Phần quản lý file mồ côi rất khó khả thi.
Nên làm một module độc lập với NukeViet để dùng thay vì đưa vào core.
Và module đó chỉ nên quét và xử lý từng thư mục của các module đã được nhận biết (cơ chế sử dụng file ở news, download, laws.....) không nên quét toàn bộ hệ thống bởi mỗi module có mỗi cách dùng file riêng, có khả năng nó sẽ xóa mất file đang được dùng ví dụ:

  • Phần ảnh thumb thì có module cắt đến cấp độ thư mục chỉ còn để lại tên file, có module lại cắt đến thư mục upload của module có module lại để nguyên path của file.
  • Có module lại có khả năng lưu path trong chuỗi json_encoded
  • Có module lại có khả năng lưu path trong chuỗi serialized

Có một cách khác nên suy nghĩ tới:

  • Xây dựng ứng dụng theo dõi và lưu lại thời gian truy vấn cuối cùng đến các file
  • Các file không được truy cập trong vòng 1 năm, vài năm thì có thể backup lại và xóa khỏi server. Nếu có nhu cầu chỉ việc khôi phục lại.

@anhtunguyen
Copy link
Contributor

Hiện tại module Upload của NukeViet chỉ quản lý danh sách và thông tin các files được tải lên (lưu ở bảng nv4_upload_file), nhưng chưa quản lý nơi sử dụng các file tải lên đó. Chỗ nào sử dụng file tải lên nào thì chỉ biết file tải lên đó, không có sự quản lý xuyên suốt.
Lại có trường hợp file tải lên được sử dụng ở nhiều module khác nhau. Hoặc có trường hợp file tải lên được sử dụng ở một vị trí không thuộc phạm vi của NukeViet...
Vì thế, việc quét xem file tải lên đang được sử dụng hay không là việc rất khó khả thi.
Nếu muốn quản lý tập trung cả khu vực sử dụng file tải lên, cần phải viết lại module Upload với cơ chế hoạt động hoàn toàn mới. Việc này sẽ buộc phải chỉnh sửa theo nó hàng loạt module (Hầu như module nào cũng liên quan đến file tải lên).
Ý tưởng ghi nhận. Nhưng thực hiện nó thì trước mắt chưa thể được.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants