
Tình trạng WordPress không upload được ảnh thường do permission thư mục uploads sai, PHP giới hạn dung lượng, thiếu bộ nhớ, file ảnh quá lớn, plugin xung đột, lỗi đường dẫn Media, server không xử lý được ảnh hoặc thư mục upload không có quyền ghi. Nên kiểm tra theo thứ tự: file ảnh → giới hạn PHP → permission → thư mục uploads → plugin → PHP/Image Library → server.
WordPress không upload được ảnh là lỗi thường gặp khi thêm hình vào Media Library, đăng bài viết, cập nhật sản phẩm WooCommerce hoặc chỉnh sửa nội dung bằng Gutenberg, Elementor và các page builder.
Lỗi có thể biểu hiện dưới nhiều dạng như HTTP error upload WordPress, ảnh tải mãi không xong, Media Library trắng, báo không thể tạo thư mục hoặc hình đã upload nhưng không hiển thị.
Nếu website đang xuất hiện nhiều lỗi kỹ thuật cùng lúc, có thể tham khảo sửa lỗi WordPress để kiểm tra đúng nguyên nhân trước khi thay đổi hosting, plugin hoặc source code.
WordPress Không Upload Được Ảnh Là Lỗi Gì?
WordPress không upload được ảnh là tình trạng hệ thống Media không thể ghi file ảnh mới vào thư mục wp-content/uploads, không thể xử lý ảnh sau khi tải lên hoặc request upload bị PHP/web server từ chối.
Một số thông báo thường gặp:
HTTP error
Unable to create directory wp-content/uploads/...
The uploaded file could not be moved to wp-content/uploads
Post-processing of the image failed
Có trường hợp ảnh nhỏ upload bình thường nhưng ảnh lớn lại lỗi. Đây thường là dấu hiệu liên quan đến PHP Memory Limit, giới hạn dung lượng upload hoặc thư viện xử lý ảnh.

🔧 Kỹ thuật: Khi gặp lỗi upload ảnh WordPress, cần phân biệt ba lớp: WordPress có nhận request hay không → PHP có nhận file hay không → server có ghi và xử lý được file hay không. Khoanh đúng lớp lỗi sẽ giúp sửa nhanh hơn.
Dấu Hiệu WordPress Không Tải Được Ảnh
Khi WordPress không tải được ảnh, lỗi có thể xuất hiện ở Media Library hoặc ngay khi thêm ảnh vào bài viết.
- ✅ Upload ảnh nhưng thanh tiến trình không chạy.
- ✅ Hiện lỗi HTTP error.
- ✅ Báo không thể tạo thư mục uploads.
- ✅ Ảnh upload xong nhưng không có thumbnail.
- ✅ Media Library hiển thị ô trắng.
- ✅ Ảnh nhỏ tải được nhưng ảnh lớn bị lỗi.
- ✅ Elementor hoặc Gutenberg không chèn được ảnh.
- ✅ WooCommerce không tải được ảnh sản phẩm.
- ✅ Website vừa chuyển hosting thì bắt đầu lỗi Media.
- ✅ Ảnh đã tồn tại nhưng URL trả về 403 hoặc 404.
8 Cách Khắc Phục WordPress Không Upload Được Ảnh
Với lỗi WordPress không upload được ảnh, nên xử lý từ nguyên nhân đơn giản nhất đến phần server. Không nên đổi permission hoặc PHP version liên tục khi chưa xác định lỗi.
| Cách xử lý | Dấu hiệu phù hợp | Mức độ |
|---|---|---|
| 1. Kiểm tra file ảnh | Chỉ một số file lỗi | Dễ |
| 2. Tăng upload limit | Ảnh lớn không upload được | Dễ |
| 3. Kiểm tra permission uploads | Không thể ghi file | Trung bình |
| 4. Kiểm tra đường dẫn uploads | Sau migrate | Trung bình |
| 5. Disable plugin gây xung đột | Lỗi sau update | Trung bình |
| 6. Tăng PHP Memory Limit | Post-processing failed | Trung bình |
| 7. Kiểm tra Imagick/GD | Không tạo thumbnail | Kỹ thuật |
| 8. Kiểm tra server/firewall | HTTP error không rõ nguyên nhân | Kỹ thuật |
1. Kiểm Tra File Khi WordPress Không Upload Được Ảnh
Trước khi chỉnh server, hãy kiểm tra chính file ảnh. Nếu chỉ một hoặc hai file bị lỗi trong khi các file khác vẫn upload bình thường, nguyên nhân có thể nằm ngay ở ảnh.
Kiểm tra:
- ✅ Dung lượng ảnh có quá lớn không.
- ✅ Tên file có ký tự đặc biệt không.
- ✅ File có bị lỗi hoặc hỏng không.
- ✅ Định dạng ảnh có được WordPress hỗ trợ không.
- ✅ Thử đổi tên file đơn giản.
- ✅ Thử resize ảnh rồi upload lại.
Ví dụ nên đổi:
Ảnh sản phẩm mới (final) #01.jpg
thành:
anh-san-pham-moi.jpg
💡 Mẹo: Nếu chỉ một ảnh lỗi, hãy thử mở ảnh bằng Photoshop hoặc công cụ xử lý hình rồi Save lại thành JPG/WebP mới. File metadata hoặc cấu trúc ảnh lỗi cũng có thể khiến WordPress không xử lý được.
2. Tăng Giới Hạn Upload Khi Ảnh WordPress Không Tải Lên
Nếu ảnh nhỏ upload được nhưng file lớn bị lỗi, cần kiểm tra giới hạn upload của PHP.
Các thông số quan trọng:
upload_max_filesize
post_max_size
memory_limit
max_execution_time
Ví dụ:
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
max_execution_time = 120
Có thể kiểm tra giới hạn hiện tại trong WordPress tại:
Media → Add New
WordPress thường hiển thị:
Maximum upload file size: ... MB
⚠️ Lưu ý: Tăng upload_max_filesize nhưng để post_max_size thấp hơn vẫn có thể khiến upload thất bại. Các giới hạn cần được cấu hình đồng bộ.
3. Kiểm Tra Permission Uploads WordPress
Permission uploads WordPress sai là nguyên nhân phổ biến nếu hệ thống báo không thể tạo thư mục hoặc không thể di chuyển file vào wp-content/uploads.
Thư mục cần kiểm tra:
/wp-content/uploads/
Permission thường dùng:
Folder: 755
File: 644
Nếu thư mục uploads không có quyền ghi phù hợp với user chạy PHP/web server, WordPress sẽ không thể lưu file.
Có nên chmod 777 không?
Không nên dùng 777 như một giải pháp cố định. Nếu phải dùng 777 mới upload được, cần kiểm tra ownership hoặc cách PHP chạy trên server.
🚨 Cảnh báo: Không chmod toàn bộ wp-content hoặc website thành 777 chỉ để sửa lỗi Media. Đây là cách xử lý rủi ro và không giải quyết đúng nguyên nhân permission.
4. Kiểm Tra Đường Dẫn Thư Mục Uploads
Nếu WordPress không upload được ảnh sau khi migrate website hoặc chuyển hosting, cần kiểm tra đường dẫn upload cũ có còn tồn tại hay không.
WordPress mặc định sử dụng:
wp-content/uploads
Một số website cũ hoặc website custom có thể từng thiết lập đường dẫn riêng.
Có thể kiểm tra trong database bảng:
wp_options
Tìm option liên quan đến:
upload_path
upload_url_path
Nếu website đã migrate nhưng vẫn còn đường dẫn tuyệt đối của hosting cũ, WordPress có thể không ghi được file.
🔧 Kỹ thuật: Với WordPress hiện đại, nếu không có nhu cầu custom upload directory thì nên để WordPress sử dụng đường dẫn mặc định thay vì hard-code path của server.
5. Plugin Gây Lỗi Upload Ảnh WordPress
Plugin tối ưu ảnh, bảo mật, CDN, WebP hoặc plugin upload custom có thể gây lỗi media WordPress.
Những nhóm plugin nên chú ý:
- ✅ Plugin nén ảnh.
- ✅ Plugin chuyển WebP/AVIF.
- ✅ Plugin CDN.
- ✅ Plugin security.
- ✅ Plugin Media Library.
- ✅ Plugin upload custom.
- ✅ Plugin tối ưu cache.
Nếu lỗi xuất hiện ngay sau khi update một plugin, hãy tạm disable plugin đó rồi thử upload lại.
Nếu không vào được admin, có thể đổi tên thư mục plugin qua File Manager hoặc FTP.
⚠️ Lưu ý: Không nên tắt hàng loạt plugin rồi kết luận lỗi đã hết. Hãy bật lại từng plugin để xác định chính xác thành phần gây xung đột.
6. Tăng PHP Memory Khi WordPress Báo Post-Processing Failed
Sau khi upload ảnh, WordPress còn phải resize và tạo nhiều thumbnail. Với ảnh có độ phân giải lớn, quá trình này có thể tiêu tốn nhiều RAM.
Lỗi thường gặp:
Post-processing of the image failed likely because the server is busy or does not have enough resources.
Có thể tăng WordPress Memory Limit trong wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );
Đặt đoạn code trước dòng:
/* That's all, stop editing! Happy publishing. */
Tuy nhiên, nếu server thực tế chỉ cấp memory thấp hơn thì cấu hình trong WordPress không thể vượt giới hạn PHP/server.
🔧 Kỹ thuật: Nếu cứ phải tăng memory rất cao mới upload được một ảnh bình thường, nên kiểm tra plugin xử lý ảnh, kích thước ảnh gốc và ImageMagick thay vì chỉ tiếp tục tăng RAM.
7. Kiểm Tra Imagick Hoặc GD Khi Lỗi Media WordPress
WordPress sử dụng thư viện xử lý ảnh trên server, phổ biến là ImageMagick/Imagick hoặc GD.
Nếu thư viện này lỗi, thiếu extension hoặc bị giới hạn tài nguyên, WordPress có thể upload file gốc nhưng không tạo được thumbnail.
Dấu hiệu:
- ✅ Ảnh gốc tồn tại trong uploads.
- ✅ Media Library hiển thị ảnh trắng.
- ✅ Không tạo được thumbnail.
- ✅ Upload ảnh dung lượng lớn bị lỗi.
- ✅ Site Health báo lỗi xử lý ảnh.
Có thể kiểm tra tại:
Tools → Site Health → Info → Media Handling
Ở đây có thể xem WordPress đang sử dụng ImageMagick hay GD và các định dạng được hỗ trợ.
8. Kiểm Tra Server Khi Bị HTTP Error Upload WordPress
HTTP error upload WordPress là thông báo khá chung. Nếu các cách trên không giải quyết được, cần kiểm tra trực tiếp web server và PHP log.
Nguyên nhân có thể gồm:
- ✅ ModSecurity chặn request upload.
- ✅ Nginx giới hạn
client_max_body_size. - ✅ PHP-FPM timeout.
- ✅ Server hết disk.
- ✅ Hosting hết inode.
- ✅ Temporary directory của PHP lỗi.
- ✅ Web Application Firewall chặn request.
- ✅ Cloudflare giới hạn hoặc chặn request.
Với Nginx, thông số thường cần chú ý:
client_max_body_size 64M;
Nếu server giới hạn thấp hơn file upload, WordPress có thể không nhận được file dù PHP đã cấu hình dung lượng cao hơn.
Nếu cần kiểm tra sâu log, PHP, hosting hoặc web server, có thể tham khảo dịch vụ fix lỗi website WordPress.
Cách Kiểm Tra Nhanh Nguyên Nhân Lỗi Upload Ảnh WordPress
Có thể dựa vào triệu chứng để khoanh vùng lỗi upload ảnh WordPress nhanh hơn.
| Triệu chứng | Ưu tiên kiểm tra |
|---|---|
| Chỉ ảnh lớn bị lỗi | Upload limit + Memory |
| Không thể tạo directory | Permission + ownership |
| HTTP Error | PHP/server log |
| Ảnh gốc có nhưng không có thumbnail | Imagick/GD + Memory |
| Lỗi sau update plugin | Plugin vừa update |
| Lỗi sau chuyển hosting | Permission + path + PHP |
| Media trả 403 | Security/WAF/.htaccess |
| Media trả 404 | URL/path/CDN |
WordPress Không Upload Được Ảnh Sau Khi Chuyển Hosting
Nếu website hoạt động bình thường ở server cũ nhưng WordPress không upload được ảnh sau khi chuyển hosting, khả năng cao lỗi liên quan đến permission, ownership hoặc môi trường PHP mới.
Nên kiểm tra:
- ✅ Ownership của
wp-content/uploads. - ✅ Permission folder.
- ✅ PHP version.
- ✅ PHP extension Imagick/GD.
- ✅ Upload limit.
- ✅ Memory Limit.
- ✅ Đường dẫn uploads cũ.
- ✅ Disk và inode.
Nếu website lâu năm sử dụng nhiều plugin, code cũ hoặc phiên bản PHP cũ, có thể cân nhắc nâng cấp website WordPress để xử lý đồng thời vấn đề tương thích PHP, plugin và Media.
Ảnh WordPress Upload Được Nhưng Không Hiển Thị
Trường hợp ảnh đã được upload vào Media Library nhưng frontend không hiển thị thì không còn là lỗi upload thuần túy. Lúc này cần kiểm tra URL ảnh, CDN, file permission và cache.
Kiểm tra:
- ✅ Mở trực tiếp URL ảnh.
- ✅ Kiểm tra HTTP Status Code.
- ✅ Kiểm tra domain CDN.
- ✅ Kiểm tra HTTP/HTTPS.
- ✅ Clear cache.
- ✅ Kiểm tra hotlink protection.
- ✅ Kiểm tra file có thực sự tồn tại.
Nếu URL ảnh trả 404 hoặc 403, nên xử lý theo lỗi URL/server thay vì tiếp tục chỉnh Media Library.
Những Cách Không Nên Làm Khi WordPress Không Upload Được Ảnh
Chmod 777 Toàn Bộ Website
Đây không phải cách sửa permission đúng. Nó còn làm tăng rủi ro bảo mật.
Cài Nhiều Plugin Media Để Thử
Nếu lỗi nằm ở server hoặc permission, cài thêm plugin không giúp giải quyết mà còn làm phức tạp quá trình debug.
Tăng Memory Không Giới Hạn
Memory chỉ là một trong nhiều nguyên nhân. Nếu ảnh nhỏ cũng không upload được thì nên kiểm tra permission, plugin hoặc server trước.
Đổi PHP Version Liên Tục
Nên kiểm tra log trước. Thay PHP version nhiều lần có thể khiến plugin khác phát sinh lỗi mới.
Checklist Sửa Lỗi WordPress Không Upload Được Ảnh
- ✅ Thử một file ảnh khác.
- ✅ Đổi tên file ảnh.
- ✅ Giảm dung lượng ảnh.
- ✅ Kiểm tra
upload_max_filesize. - ✅ Kiểm tra
post_max_size. - ✅ Kiểm tra PHP Memory Limit.
- ✅ Kiểm tra
wp-content/uploads. - ✅ Kiểm tra permission folder.
- ✅ Kiểm tra ownership.
- ✅ Kiểm tra upload path.
- ✅ Disable plugin liên quan Media.
- ✅ Kiểm tra Imagick/GD.
- ✅ Kiểm tra PHP Error Log.
- ✅ Kiểm tra ModSecurity/WAF.
- ✅ Kiểm tra dung lượng ổ đĩa.
- ✅ Kiểm tra inode hosting.
Chi Phí Sửa Lỗi Upload Ảnh WordPress
Chi phí xử lý WordPress không upload được ảnh phụ thuộc lỗi nằm ở Media, plugin, PHP hay server.
| Hạng mục | Giá tham khảo |
|---|---|
| Lỗi upload cơ bản / permission | Từ 300.000đ |
| Plugin/theme gây lỗi Media | 300.000đ – 800.000đ |
| PHP/code xử lý ảnh | Từ 500.000đ |
| Hosting/server/Imagick | Kiểm tra và báo giá |
📌 Lưu ý: Mức giá trên chỉ để tham khảo. Cần kiểm tra website thực tế để biết lỗi nằm ở WordPress, PHP, permission, plugin hay server.
Khi Nào Nên Nhờ Kỹ Thuật Sửa Lỗi Media WordPress?
Các lỗi đơn giản như file quá lớn hoặc tên file không phù hợp có thể tự xử lý. Tuy nhiên nên nhờ kỹ thuật nếu WordPress không upload được ảnh trong các trường hợp sau:
- ✅ Toàn bộ Media đều không upload được.
- ✅ Permission đúng nhưng vẫn báo lỗi.
- ✅ HTTP error xuất hiện liên tục.
- ✅ Imagick/GD bị lỗi.
- ✅ Website vừa migrate server.
- ✅ Upload bị ModSecurity hoặc firewall chặn.
- ✅ Ảnh upload được nhưng không tạo thumbnail.
- ✅ Website có nhiều lỗi PHP/plugin cùng lúc.
Nếu cần xử lý trực tiếp lỗi upload ảnh WordPress, permission, Media Library hoặc PHP, có thể tham khảo dịch vụ sửa lỗi WordPress.
Trường hợp lỗi liên quan nhiều thành phần như PHP, server, plugin hoặc database, có thể sử dụng dịch vụ fix lỗi website để khoanh vùng sâu hơn.
Nếu website đã cũ, plugin lâu năm hoặc thường xuyên phát sinh lỗi Media sau khi nâng PHP, có thể xem thêm dịch vụ nâng cấp website WordPress.
Nếu ngoài lỗi Media còn cần chỉnh lại giao diện, chức năng hoặc code custom, có thể tham khảo dịch vụ chỉnh sửa website WordPress.
Câu Hỏi Thường Gặp Về WordPress Không Upload Được Ảnh
Tại sao WordPress không upload được ảnh?
WordPress không upload được ảnh thường do file quá lớn, PHP giới hạn upload, permission thư mục uploads sai, thiếu memory, plugin xung đột hoặc server không xử lý được file.
HTTP error upload WordPress là lỗi gì?
HTTP error upload WordPress là thông báo chung khi request upload không hoàn tất. Nguyên nhân có thể nằm ở PHP, Memory Limit, ModSecurity, plugin hoặc web server.
Permission uploads WordPress nên để bao nhiêu?
Thông thường thư mục dùng permission 755 và file dùng 644. Tuy nhiên ownership cũng phải đúng với cấu hình server. Không nên dùng 777 như giải pháp cố định.
Tại sao ảnh nhỏ upload được nhưng ảnh lớn bị lỗi?
Khả năng cao do upload_max_filesize, post_max_size, PHP Memory Limit hoặc quá trình resize ảnh vượt tài nguyên server.
Ảnh WordPress không tạo thumbnail do đâu?
Nguyên nhân thường liên quan đến Imagick/GD, PHP Memory Limit, file ảnh quá lớn hoặc plugin tối ưu ảnh gây xung đột.
Có nên xóa thư mục uploads để tạo lại không?
Không nên. Thư mục uploads chứa toàn bộ Media của website. Xóa thư mục có thể làm mất hình ảnh đang được sử dụng trong bài viết, sản phẩm và giao diện.
WordPress không upload ảnh sau khi chuyển hosting phải làm sao?
Hãy kiểm tra permission, ownership, đường dẫn uploads, PHP version, PHP extension, upload limit và server disk. Đây là các nguyên nhân thường gặp sau khi migrate.
Media Library trắng nhưng ảnh vẫn tồn tại là lỗi gì?
Có thể liên quan đến JavaScript/Ajax, plugin Media, lỗi thumbnail hoặc URL ảnh. Nên kiểm tra Console, PHP Error Log và mở trực tiếp URL ảnh để xác định lỗi.
Kết Luận
WordPress không upload được ảnh có thể bắt nguồn từ file ảnh, giới hạn PHP, permission, thư mục uploads, plugin, Imagick/GD hoặc web server.
Quy trình xử lý nên theo thứ tự:
Kiểm tra file → Upload Limit → Permission → Upload Path → Plugin → Memory → Imagick/GD → Server.
Không nên chmod 777, xóa thư mục uploads hoặc cài hàng loạt plugin khi chưa biết lỗi thực sự nằm ở đâu.
Vẫn không upload được ảnh lên WordPress?
Nếu đã kiểm tra file, dung lượng và permission nhưng lỗi vẫn còn, cần xem PHP Error Log, Image Library, ModSecurity và cấu hình server. Có thể tham khảo sửa lỗi WordPress để xử lý đúng nguyên nhân thay vì thử thay đổi nhiều cấu hình cùng lúc.