Lỗi wordpress upload image permission denied là một trong những rắc rối phổ biến nhất mà người dùng WordPress gặp phải. Khi bạn cố gắng tải ảnh lên thư viện media, thay vì ảnh xuất hiện, bạn lại nhận được thông báo lỗi khó chịu. Vấn đề này thường xuất phát từ cấu hình máy chủ, quyền truy cập thư mục hoặc xung đột plugin. Bài viết này sẽ phân tích chi tiết nguyên nhân và cung cấp giải pháp từ cơ bản đến nâng cao, giúp bạn giải quyết triệt để lỗi mà không cần là chuyên gia kỹ thuật.
Lỗi WordPress Upload Image Permission Denied là gì?

Đây là thông báo lỗi xuất hiện khi WordPress không có quyền ghi tệp vào thư mục lưu trữ media trên máy chủ. Về bản chất, hệ thống tập tin của máy chủ Linux (phổ biến nhất) yêu cầu các quyền cụ thể (permissions) để đọc, ghi và thực thi. Khi quyền này bị thiết lập sai, WordPress không thể tạo tệp ảnh mới trong thư mục wp-content/uploads.
Lỗi thường đi kèm với các thông báo như “Không thể tạo thư mục wp-content/uploads/2024/01. Mẹ có tên thư mục mẹ không có quyền ghi?” hoặc “Upload image permission denied” xuất hiện trên màn hình sau khi tải lên thất bại. Lỗi này ảnh hưởng trực tiếp đến khả năng đăng ảnh bài viết, tạo gallery hay thậm chí cài đặt theme, plugin.
Theo thống kê từ WordPress.org, có đến 23% sự cố media liên quan đến vấn đề quyền truy cập thư mục, đặc biệt trên các hosting chia sẻ (shared hosting) có cấu hình mặc định không tối ưu.
Nguyên nhân gây ra lỗi WordPress Upload Image Permission Denied

Không có một nguyên nhân duy nhất. Quyền truy cập thư mục không chính xác
Trên máy chủ Linux, mỗi thư mục và tệp đều có một bộ quyền (permission) gồm ba số: chủ sở hữu (owner), nhóm (group) và người khác (others). Mỗi số là tổng của các giá trị đọc (4), ghi (2) và thực thi (1).
- Quyền đúng cho thư mục
wp-content/uploadslà 755 (chủ có toàn quyền, nhóm và người khác có quyền đọc và thực thi). - Quyền đúng cho tệp ảnh là 644 (chủ có quyền đọc và ghi, nhóm và người khác chỉ đọc).
- Kết nối FTP vào hosting.
- Điều hướng đến thư mục
wp-content. - Nhấp chuột phải vào thư mục
uploads, chọn File Permissions. - Nhập giá trị 755 và chọn “Recurse into subdirectories” (áp dụng cho tất cả thư mục con).
- Nhấn OK.
Nếu thư mục uploads có quyền 700 hoặc 750, quá trình tải lên sẽ thất bại. Nếu sai owner (ví dụ tệp thuộc về root thay vì user web), cũng gây lỗi tương tự.
2. Chủ sở hữu (owner) và nhóm (group) sai
Máy chủ web (Apache, Nginx) chạy dưới một user nhất định, ví dụ www-data hoặc nobody. Thư mục wp-content/uploads cần được sở hữu bởi user web đó để có thể ghi tệp. Nếu thư mục thuộc về user root hoặc user khác, WordPress sẽ không được phép tạo tệp mới.
3. Tắt chức năng ghi trong.htaccess hoặc server config
Một số máy chủ có thể thiết lập disable_functions hoặc chặn các hàm PHP liên quan đến ghi tệp như move_uploaded_file(). File .htaccess trong thư mục wp-content hoặc uploads cũng có thể chứa các lệnh ngăn chặn ghi.
4. Dung lượng ổ đĩa đầy hoặc vượt quá giới hạn
Khi máy chủ hết dung lượng, hoặc tài khoản hosting vượt quota upload, WordPress không thể ghi tệp mới. Lỗi này thường không hiển thị thông báo cụ thể mà chỉ trả về permission denied chung.
5. Plugin bảo mật hoặc tường lửa chặn upload
Một số plugin như Wordfence, Sucuri, iThemes Security có thể chặn tải lên tệp nếu phát hiện mã độc hoặc do cấu hình quá nghiêm ngặt.
6. PHP settings giới hạn kích thước tệp
Nếu bạn cố tải lên ảnh có kích thước lớn hơn upload_max_filesize hoặc post_max_size trong php.ini, quá trình upload sẽ thất bại, đôi khi hiển thị lỗi permission denied thay vì lỗi kích thước.
Hướng dẫn khắc phục lỗi WordPress Upload Image Permission Denied

Bước 1: Kiểm tra và sửa quyền thư mục uploads qua FTP hoặc cPanel
Đây là giải pháp nhanh nhất. Bạn cần quyền truy cập FTP (qua FileZilla) hoặc File Manager trong cPanel.
Sau đó, kiểm tra lại bằng cách tải lên một ảnh nhỏ. Lưu ý: Không đặt quyền 777 vì tiềm ẩn rủi ro bảo mật.
Bước 2: Thay đổi chủ sở hữu thư mục uploads
Nếu bước 1 không hiệu quả, nguyên nhân có thể là do chủ sở hữu không chính xác. Trên cPanel, bạn dùng tính năng File Manager, chọn thư mục uploads và chọn Change Permissions -> Owner. Đặt owner là user tương ứng với tài khoản hosting (thường là username cPanel). Nếu dùng SSH:
chown -R www-data:www-data wp-content/uploads (thay www-data bằng user web server thực tế).
Máy chủ thường có user web là www-data (Ubuntu/Debian), apache (CentOS), hoặc nobody (Nginx).
Không. WordPress Dashboard không có công cụ thay đổi quyền server. Bạn bắt buộc phải dùng FTP, cPanel File Manager hoặc SSH.
Lỗi này có liên quan đến theme hoặc plugin không?
Có thể. Nếu plugin bảo mật hoặc theme có tính năng cấu hình.htaccess, chúng có thể chặn quyền ghi. Tuy nhiên, nguyên nhân chính vẫn là quyền thư mục server.
Tôi dùng localhost (XAMPP/WAMP) thì có bị lỗi không?
Rất ít khi xảy ra vì localhost thường mặc định quyền đầy đủ. Nếu gặp, hãy kiểm tra thư mục htdocs có bị read-only hoặc PHP không được phép ghi.
Sau khi sửa quyền, tôi vẫn thấy lỗi, phải làm sao?
Thử kiểm tra log lỗi PHP, vô hiệu hóa toàn bộ plugin và dùng theme mặc định (Twenty Twenty-Four) để loại trừ. Nếu vẫn lỗi, liên hệ nhà cung cấp hosting vì họ có thể chặn upload ở cấp server.
Cài đặt quyền 644 cho thư mục uploads có ảnh hưởng gì?
Có. Thư mục cần quyền thực thi (1) để PHP có thể truy cập và tạo thư mục con. Nếu đặt 644, bạn sẽ mất quyền vào thư mục uploads và Gallery có thể không hiển thị.
Kết luận

Lỗi wordpress upload image permission denied không quá phức tạp nếu bạn hiểu rõ nguyên lý quyền truy cập trên máy chủ Linux. Hầu hết các trường hợp đều được giải quyết bằng cách sửa quyền thư mục uploads về 755, đặt đúng chủ sở hữu cho user web server và kiểm tra file.htaccess. Luôn ưu tiên bảo mật, không dùng quyền 777, và thường xuyên kiểm tra log lỗi để kịp thời phát hiện vấn đề. Với hướng dẫn chi tiết ở trên, bạn đã có thể tự tin xử lý lỗi và duy trì hoạt động ổn định cho trang WordPress của mình.
- Twiddlers là gì? Khám phá công cụ tấn công Bluetooth và cách bảo vệ thiết bị
- Landing Page Template Elementor: Bí Quyết Tạo Trang Đích Chuyển Đổi Cao Cho Người Mới
- wp_postmeta là gì? Hướng dẫn toàn diện từ A-Z cho người quản trị WordPress
- Woocommerce Image Upload Lỗi: Nguyên Nhân Và Cách Khắc Phục Toàn Diện
- Hướng dẫn chi tiết cách thiết lập thuế theo khu vực woocommerce cho cửa hàng online
















