Tôi đã gặp vấn đề tương tự với Trường hợp Google Cloud Engine, không có cPanel, không có phpMyAdmin và FTP, trên Ubuntu và Apache. Và tôi đã giải quyết theo cách này:
1. Xác định thư mục tải lên trên wp-config.php
Mở wp-config.php bằng nano hoặc vim và thêm đoạn mã sau
define( 'UPLOADS', 'wp-content/uploads' );
trước dòng này:
require_once(ABSPATH . 'wp-settings.php');
và lưu nó
2. Thay đổi chủ sở hữu
Thay đổi thư mục nội dung wp. Trong trường hợp của tôi (sử dụng đường dẫn của riêng bạn):
cd /var/www/html/wp-content
Tiếp theo, thay đổi chủ sở hữu thành dữ liệu www
chown -R www-data:www-data plugins
Tại sao dữ liệu www? Trong trường hợp của tôi, là tên của tài khoản dịch vụ apache đang chạy trên máy chủ của tôi. Bạn có thể kiểm tra tên với:
ps aux | egrep '(apache|httpd)'
comand trả về một số như thế này:
www-data 5441 0.0 5.8 566184 34896 ? S 06:34 0:00 /usr/sbin/apache2 -k start
www-data 7753 0.0 5.9 566248 35512 ? S 09:00 0:00 /usr/sbin/apache2 -k start
www-data 9840 0.0 5.7 566160 34320 ? S 11:21 0:00 /usr/sbin/apache2 -k start
www-data 21068 0.0 6.2 564032 37192 ? S 18:22 0:00 /usr/sbin/apache2 -k start
www-data 21069 0.0 6.0 563692 35636 ? S 18:22 0:00 /usr/sbin/apache2 -k start
root 21455 0.0 0.1 13208 1036 pts/1 S+ 18:44 0:00 grep -E --color=auto (apache|httpd)
root 31982 0.0 1.1 485904 6872 ? Ss Jan03 0:18 /usr/sbin/apache2 -k start
như bạn thấy, root và www-data. Có thể với máy chủ windows, tài khoản sẽ khác (danh sách tác vụ? Pslist?), Tôi không biết làm thế nào để lấy nó (tôi không bao giờ sử dụng máy chủ windows, xin lỗi). Tôi hy vọng dữ liệu www hoạt động cho bạn.
Cuối cùng, hãy đảm bảo thư mục tải lên có quyền phù hợp
chmod 755 -R uploads
3. Cấp cho người dùng quyền sử dụng Wordpress
Để thư mục html hoặc public_html (trong trường hợp của tôi / var / www / html, hãy thay đổi nó cho đường dẫn của riêng bạn)
chown -R www-data /var/www/html
Và Voila. Tôi hy vọng hướng dẫn nhỏ này hữu ích, hoặc ít nhất, cung cấp cho bạn ý tưởng để giải quyết nó!
wp-content/themes
vàwp-content/plugins
.