“PHP Warning: move_uploaded_file“ זוהי שגיאה טיפוסית של שרתי אינטרנט עם Nginx וזה מופיע כאשר אנו רוצים להעלות לקובץ בשרת. לרוב, כשאנחנו צריכים להעלות כמה תעודות או קבצים אחרים שלא “Media”, השגיאה אינה רואה אותה בממשק הניהול של ה- CMS.
בצורה קונקרטית יותר, השגיאה “PHP Warning: move_uploaded_file” אנו מוצאים את זה ב error.log בצורה: 
FastCGI sent in stderr: "PHP message: PHP Warning:  move_uploaded_file(/srv/www/domain.test/public/file.file): failed to open stream: Permission denied in /srv/www/domain.test/public/script.php on line 748 PHP message: PHP Warning:  move_uploaded_file(): Unable to move '/tmp/phpqAVtWy'מדוע השגיאה מתרחשת “PHP Warning: move_uploaded_file“ ואיך אנחנו פותרים את זה
כפי שאמרתי לעיל, השגיאה מופיעה כאשר אנו מנסים להעלות קבצים בשרת האינטרנט.
“FastCGI sent in stderr” אופייני לשרתים שיש להם PHP-FPM Nginx כתוכנת אינטרנט. אז הבעיה נמצאת איפשהו בקשר של הסקריפט דרכו מועברים הקבצים. 
“move_uploaded_file(): Unable to move” זה אומר לנו בבירור מאוד שלא ניתן להעלות קבצים אלה ולהעביר לתיקיה אחרת בשרת האינטרנט באמצעות הסקריפט שמבצע את הפעולה. 
- תקן שגיאת nginx: לא יכול היה להקצות הפעלה חדשה בפגישה של SSL מטמון משותף "le_nginx_ssl" בזמן לחיצת יד SSL
- תקן [שגיאת http] לקוח שנועד לשלוח גוף גדול מדי [העלאת מדיה וורדפרס]
פתרון שגיאה זו PHP זה נפתר בפשטות רבה, הגדר בשרת את ההרשאות הנכונות, הן עבור סקריפט הביצוע, אליו ככל הנראה המשתמש: ל- Nginx לא הייתה גישה, כמו גם לתיקיית היעד.
אם קבצי האתר אינם שייכים למשתמש, מכיוון שהוא נמצא ב- CPANEL, VestACP או פלטפורמות ניהול אירוח אחרות, אז הוא כמעט בוודאי פותר, זה לתת למשתמש NGINX גישה לתיקיית ההעלאה ולסקריפט.
לדוגמא של הקוד לעיל, נבצע את ההזמנה הבאה ב- SSH:
chown -R nginx:nginx /srv/www/domain.test/public/
chmod g+w file.fileאנו חוזרים על העלאה והכל אמור ללכת ללא השגיאה “move_uploaded_file(): Unable to move“ו
אם אתה ממשיך להיות בעיות, ניתן לפתור אותו בתגובות מהמדריך הזה.
 
			
Bonjour,
קראתי וקראתי מחדש את המאמרים שלך בנושא [move_upload_file].
מסתבר שאני מתמודד עם הבעיה הזו ושאני מחפש חודשים רבים לצאת ממנה ללא הצלחה.
יש לי אתר אישי בו יש לי צורת דף .html שעובד רק באופן חלקי, כלומר: בלתי אפשרי לפתוח את הזרימה וכו '... וכמובן להעביר אותו ל'העלאות'.
אני פורש מהאמנויות הגרפיות, טיפוגרף ב -13, אחר כך עורך אופסט, מעצב גרפי, מנהל אתרים, בקיצור אני בן 84 בדימוס ואני תמיד נלהב מתפקידי.
אם אני מסתדר עם HTML ו- JavaScript, אני עולה נגד PHP היום.
אני עושה עם ותיקי הקולגות שלי באלג'יריה, טיולים קטנים ומבינו “דוחות” שהכנסתי לאתר האישי שלי זמין למי שמעוניין; אז אני רוצה לקבל מסמכים כי אני לא עושה הכל בעצמי כדי להמחיש את דברי, ומכאן הרעיון של הטיפול בטופס וטיפול ב- PHP.
יצרתי את האתר שלי עם "DreamWeaver CC2020", גרסת ה- MAC המתארחת בבית בשרת Synology "NGNIX" DMS נ '7.1 – PHP 8 (PEP PHP 7.2, PHP 7.3, PHP 7.4). Cerfified par ברירת מחדל (No-IP): TrustCC DV CA – G2 RSA
הטופס פועל כראוי עבור שדות "הטקסט", אך מסרב לשדות התקשורת.
אם תרצה, אתה יכול להתחבר לכתובת האתר שלמעלה, לחץ על הצלמית וכיוון שלא הפעלתי את ה- HTML "הגב", אתה יכול להציג את התוצאה בדף PHP. (הקצתי 10 מגה בייט ו 20 מגה -בייט) לתקשורת.
ואם אני טוב לך, הדאגה הייתה מגיעה מה"מהירות "של שרתי ה- PHP-TPM של NGINX וזה המקרה שלי, אז בחלונית TPM, יש הרבה תיבות לבדוק או לבטל את הסימון, אבל מה?
שמתי לב לפקודת SSH:
Chown -r nginx: nginx/srv/www/domain.test/public/
CHMOD G+W FILE.FILE
אבל האם זה יתאים לשרת שלי?
תודה מראש על עצתך היקרה