Avertisment PHP: chmod(): Operațiune nepermisă în class-wp-filesystem-direct.php la linia 173

3 nov. 2020, 20:54:58
Vizualizări: 22.8K
Voturi: 4

Rulez o instanță WordPress pe serverul meu web, dar primesc această eroare în loguri

PHP Warning:  chmod(): Operation not permitted in 
/home/webserver/html/wp-admin/includes/class-wp-filesystem-direct.php on line 173, 
referer: http:// mysite.com/

Am verificat fișierul class-wp-filesystem-direct.php la linia 173

iată linia:

if ( ! $recursive || ! $this->is_dir( $file ) ) {
                        return chmod( $file, $mode );
}

Acestea sunt permisiunile acestui fișier:

-rwxrwxr-x 1 root apache 17K Oct 20 20:24 /home/webserver/html/wp-admin/includes/class-wp-filesystem-direct.php

Știe cineva ce nu este în regulă cu instanța mea WordPress?

Aș aprecia foarte mult ajutorul vostru.

8
Comentarii

Nu este vorba despre permisiunile fișierelor, ci despre proprietatea asupra acestora. De exemplu, dacă am un fișier cu permisiunile 777 deținut de root și în grupul root, atunci utilizatorul apache nu va putea să-i modifice permisiunile

Tom J Nowell Tom J Nowell
3 nov. 2020 21:24:56

@TomJNowell, dar întrebarea este ce fișier trebuie să modific permisiunile? sau să schimb proprietatea?

user2924482 user2924482
3 nov. 2020 21:58:54

Nu cred că este posibil să spun doar pe baza informațiilor pe care le-ai furnizat, ce încercai să faci când s-a întâmplat? O actualizare WP?

Tom J Nowell Tom J Nowell
4 nov. 2020 01:56:49

pot confirma acest lucru încercând să actualizez wp prin panoul de administrare

clockw0rk clockw0rk
21 iul. 2021 04:26:38

Soluția mea a fost să încarc întregul folder wp-includes din versiunea 5.7 din nou. Am avut noroc că scriu plugin-uri și de obicei nu mă preocup de nucleul local, așa că după actualizarea eșuată am putut doar să reîncarc nucleul 5.7 și a funcționat din nou

clockw0rk clockw0rk
21 iul. 2021 04:34:20

@clockw0rk Poți, te rog, să elaborezi soluția ta? Am aceeași problemă acum.

Cantor Cantor
4 mai 2022 13:01:27

Aveam o instanță funcțională de WordPress pe hard disk-ul meu. Singurul lucru pe care l-am încărcat/vărsat în repository a fost plugin-ul meu. Așa că, când actualizarea a eșuat, am putut pur și simplu să încarc întregul folder wp-includes și să-l suprascriu pe server - un "hard-downgrade", ca să zic așa.

clockw0rk clockw0rk
5 mai 2022 19:04:08

Pentru informație, am reușit să scap de eroare setând chmod -R 777 pe folderele admin și include, apoi actualizând prin interfața de administrare, iar apoi setând din nou chmod -R 750 pe foldere pentru a intercede permisiunile de scriere pentru scripturi. Dacă nu vă pasă, puteți lăsa permanent permisiunile 777 pe ele.

clockw0rk clockw0rk
5 mai 2022 19:04:26
Arată celelalte 3 comentarii
Toate răspunsurile la întrebare 3
4

În cazul meu, acestea au fost fișiere în folderul /wp-content/uploads/bb-plugin/cache/.

17 dec. 2020 08:55:46
Comentarii

Vrei să spui că aveai fișiere acolo cu permisiuni greșite? De ce ar încerca WordPress să facă chmod pe acele fișiere?

Rup Rup
17 dec. 2020 10:22:02

@Rup bb-plugin a încercat să acceseze aceste fișiere folosind API-ul de fișiere din WP. Nu mai țin minte dacă plugin-ul a încercat să creeze fișiere noi sau să modifice cele existente.

Aleksandr Levashov Aleksandr Levashov
18 dec. 2020 16:43:08

hmm, am făcut ls -l pentru fiecare fișier din uploads dar nu găsesc fișierul care cauzează eroarea. Dezvolt local cu XAMPP pe un macbook. Dar dintr-o dată nu mai pot actualiza plugin-urile

alex alex
10 ian. 2022 23:30:18

aceeași problemă și la mine, Beaver Builder

Sam Holguin Sam Holguin
14 iun. 2023 13:39:56
0

Trebuie să schimbi proprietarul de la "root" la "www-data". www-data este utilizatorul web pentru apache2.

sudo chown www-data /var/www/html/[numele-siteului-tau]/wp-admin/includes/class-wp-filesystem-direct.php

sau mai bine schimbă toate fișierele din folderul wp-admin recursiv

sudo chown www-data /var/www/html/[numele-siteului-tau]/wp-admin/  -R
7 sept. 2022 08:57:19
0

Trebuie să verifici utilizatorul sub care rulează serverul tău web, precum și utilizatorul și grupul proprietar pentru fișierele din directorul wp-content.

Dacă utilizatorul serverului web nu este același cu proprietarul fișierelor sau nu face parte din același grup, atunci această eroare apare deoarece scriptul, în timp ce încearcă să regenereze diferitele dimensiuni ale imaginii originale, nu are permisiunea de a înlocui fișierele și astfel arată eroarea menționată.

21 feb. 2023 03:38:54