ฉันมีปัญหาคล้ายกันกับอินสแตนซ์ของ Google Cloud Engine โดยไม่มี cPanel, ไม่มี phpMyAdmin และ FTP บน Ubuntu และ Apache และฉันแก้ไขวิธีนี้:
1. กำหนดโฟลเดอร์อัพโหลดใน wp-config.php
เปิด wp-config.php ด้วย nano หรือ vim และเพิ่มรหัสต่อไปนี้
define( 'UPLOADS', 'wp-content/uploads' );
ก่อนบรรทัดนี้:
require_once(ABSPATH . 'wp-settings.php');
และบันทึก
2. เปลี่ยนเจ้าของ
เปลี่ยนเป็นไดเร็กทอรี wp-content ในกรณีของฉัน (ใช้เส้นทางของคุณเอง):
cd /var/www/html/wp-content
ถัดไปเปลี่ยนเจ้าของเป็นwww-data
chown -R www-data:www-data plugins
ทำไมต้อง www-data? ในกรณีของฉันชื่อของบัญชีบริการ apache ที่ทำงานบนเซิร์ฟเวอร์ของฉันคือ คุณสามารถตรวจสอบชื่อด้วย:
ps aux | egrep '(apache|httpd)'
comand ที่ส่งกลับบางสิ่งเช่นนี้:
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
ตามที่เห็นรูทและ www-data อาจจะมีเซิร์ฟเวอร์ windows บัญชีจะแตกต่างกัน (tasklist? pslist?) ฉันไม่รู้วิธีรับ (ฉันไม่เคยใช้ windows server ขอโทษ) ฉันหวังว่า www-data จะเหมาะกับคุณ
สุดท้ายตรวจสอบให้แน่ใจว่าโฟลเดอร์ที่อัปโหลดมีสิทธิ์ที่ถูกต้อง
chmod 755 -R uploads
3. ให้สิทธิ์ผู้ใช้ในการใช้ Wordpress
หากต้องการ html หรือโฟลเดอร์ public_html (ในกรณีของฉัน / var / www / html ให้เปลี่ยนเป็นเส้นทางของคุณเอง)
chown -R www-data /var/www/html
และvoilà ฉันหวังว่าคู่มือเล็ก ๆ นี้มีประโยชน์หรืออย่างน้อยก็ให้ความคิดในการแก้ไข!
wp-content/themes
wp-content/plugins