Heim > Artikel > Backend-Entwicklung > Was soll ich tun, wenn Linux PHP einen Ordner nicht hochladen kann?
Lösung für das Problem, dass Linux PHP keinen Ordner hochladen kann: 1. Erstellen Sie einen upload_tmp-Ordner im Mount-Verzeichnis. 2. Setzen Sie „upload_tmp_dir=" auf „website/upload_tmp".
Die Betriebsumgebung dieses Artikels: Linux5.9.8-System, PHP-Version 7.1, DELL G3-Computer
Was soll ich tun, wenn Linux PHP den Ordner nicht hochladen kann?
php kann die Datei nicht hochladen ( (Linux-Server)
Heute habe ich festgestellt, dass Dateien plötzlich nicht mehr hochgeladen werden konnten. Die Konfiguration von php.ini ist bereits vorhanden.
Umgebung: Linux (Centos 5.3) + Apache + PHP + MySQL
Website-Verzeichnisdatei: Verwenden Sie smb Mounten Sie die Festplatten-Array-Freigabe des Windows-Servers
Website-Verzeichnisberechtigungen: 777
php.ini:
-------------------------- --------------------------
upload_max_filesize = 200M max_file_uploads = 20 post_max_size = 200M max_execution_time = 60000 max_input_time = 6000 ;max_input_nesting_level = 64 memory_limit = 256M
------- -------------------------- ---------- --
Aber das CMS-System meldet immer wieder, dass es nicht über genügend Berechtigungen verfügt. Nachdem ich die relevanten Informationen konsultiert habe, habe ich festgestellt, dass in der php.ini-Datei ein Parameter des temporären Ordners angegeben ist (alle hochgeladenen Dateien werden dort abgelegt). der temporäre Ordner)
Das heißt:
------------------------ --------------- -----------------
;upload_tmp_dir =
------------------ ------------ ----------------------
Das Obige ist standardmäßig kommentiert, was bedeutet, dass der virtuelle Speicher verwendet wird.
Wenn der Speicher voll ist, wird dies der Fall sein Es könnte ein Problem sein, dass die Datei nicht hochgeladen werden kann, d. h. ein 777-Fehler wird angezeigt
Verwenden Sie den Befehl df - h zur Abfrage. Die Ergebnisse lauten wie folgt:
----------- - ------------------------------------------------- - -----------------------
/dev/mapper/VolGroup00-LogVol00 29G 28G 0 100% / /dev/sda1 99M 12M 82M 13% /boot tmpfs 1014M 0 1014M 0% /dev/shm //192.168.1.100/website 322G 21G 301G 7% /www/web/website
------------------------------------ -- ------------------------------------------------ -- --------------
tmpfs ist voll, also habe ich es geändert, um einen upload_tmp-Ordner im Mount-Verzeichnis zu erstellen und „upload_tmp_dir =" auf „ upload_tmp_dir =/www/web/“ zu setzen. website/upload_tmp
“
Starten Sie nach dem Speichern Apache neu und setzen Sie den Upload fort.
Hinweis: Erteilen Sie dem hochgeladenen Verzeichnis 777 Berechtigungen, einschließlich der folgenden Unterverzeichnisse chmod -R 777 Verzeichnisname
Zusammenfassung:
Es ist am besten, das Temporäre festzulegen Datei auf den gemounteten Festplattenspeicher (vorzugsweise größer), da der Standardwert von tmpfs die Hälfte des physischen Speichers beträgt und das Hochladen einiger Dateien ihn schnell ausfüllt Es führt dazu, dass das Hochladen der Dateien fehlschlägt Bei der Konfiguration verschiedener Website-Umgebungen sollten Sie auf das Verzeichnis achten, in dem temporäre Dateien gespeichert sind.
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Linux PHP einen Ordner nicht hochladen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!