Lỗi không tải được file lớn trên DirectAdmin

Lỗi này thường xảy ra khi bạn cố gắng tải lên một file có kích thước vượt quá giới hạn do cấu hình của PHP hoặc Web Server (Apache/nginx). Dưới đây là các nguyên nhân và cách khắc phục.


1. Tăng giới hạn tải lên file trong PHP (upload_max_filesize và post_max_size)

Nguyên nhân:
Cấu hình PHP mặc định giới hạn kích thước file tải lên và kích thước dữ liệu POST. Nếu bạn tải file có dung lượng lớn hơn các giới hạn này, việc tải lên sẽ không thành công.

Cách khắc phục:

  1. Đăng nhập vào DirectAdmin.

  2. Vào PHP Settings trong User Level hoặc Admin Level (tùy thuộc vào quyền truy cập của bạn).

  3. Tìm và điều chỉnh các giá trị sau trong file cấu hình php.ini hoặc trong PHP Settings:

    • upload_max_filesize: Tăng giá trị này để cho phép tải file lớn hơn. Ví dụ, để tải file lên 100MB, hãy thay đổi giá trị này thành 100M.

    • post_max_size: Tăng giá trị này để đảm bảo tổng dung lượng của dữ liệu POST (bao gồm cả file tải lên) không vượt quá giới hạn. Đặt giá trị này ít nhất bằng hoặc lớn hơn giá trị của upload_max_filesize. Ví dụ: 100M.

    • max_execution_time: Tăng giá trị này để đảm bảo PHP có đủ thời gian để xử lý file lớn. Ví dụ: 300 giây (5 phút).

    • max_input_time: Tăng giới hạn thời gian để PHP có thể tiếp nhận và xử lý dữ liệu.

    Ví dụ về cấu hình trong php.ini:

    upload_max_filesize = 100M
    post_max_size = 100M
    max_execution_time = 300
    max_input_time = 300
  4. Lưu lại thay đổi và khởi động lại dịch vụ web (Apache/nginx) để áp dụng các thay đổi.


2. Tăng giới hạn tải lên trong Apache/nginx (Web Server)

Nếu bạn sử dụng nginx hoặc Apache, bạn cũng cần điều chỉnh cấu hình của server để cho phép tải file lớn hơn.

Cách khắc phục với Apache:

  1. Mở file cấu hình httpd.conf hoặc apache2.conf (tùy thuộc vào hệ điều hành).

  2. Tìm các dòng cấu hình sau và thay đổi giá trị:

    LimitRequestBody 104857600

    Đây là giới hạn số byte tối đa mà Apache cho phép tải lên. Thay đổi giá trị này thành 104857600 (100MB).

  3. Sau khi thay đổi, lưu file và khởi động lại Apache:

    service apache2 restart

Cách khắc phục với nginx:

  1. Mở file cấu hình nginx.conf.

  2. Tìm và thay đổi giá trị của client_max_body_size:

    client_max_body_size 100M;

    Giá trị này cho phép nginx chấp nhận các yêu cầu POST với dung lượng tối đa là 100MB.

  3. Lưu file và khởi động lại nginx:

    service nginx restart

3. Kiểm tra giới hạn dung lượng qua cPanel/DirectAdmin File Manager

Đôi khi, ngay cả khi đã thay đổi các giá trị trong php.iniweb server, nhưng vấn đề vẫn có thể xảy ra do các giới hạn từ File Manager trong DirectAdmin hoặc cPanel.

Cách khắc phục:

  1. Đảm bảo rằng bạn không gặp phải quyền truy cập file sai trong File Manager của DirectAdmin.

  2. Kiểm tra lại dung lượng ổ đĩa (Disk Quota) để chắc chắn rằng bạn có đủ không gian để tải file lên. Nếu hết dung lượng, bạn sẽ không thể tải file lên thành công.


4. Sử dụng FTP để tải file lớn lên server

Nếu bạn vẫn gặp khó khăn trong việc tải lên file lớn qua trình duyệt, có thể thử tải lên thông qua FTP (File Transfer Protocol), vì FTP không bị hạn chế về kích thước file như trình duyệt web.

Cách thực hiện:

  1. Sử dụng phần mềm FTP như FileZilla để kết nối với server của bạn.

  2. Tải file trực tiếp vào thư mục trên server thay vì sử dụng giao diện web.

  3. Sau khi tải xong, bạn có thể truy cập file từ File Manager trong DirectAdmin để quản lý.

Để lại một bình luận 0

Tài khoản email của bạn sẽ không được công khai. Trường bắt buộc được đánh dấu *