Centos

如何設置 wordpress 上傳權限?

  • February 26, 2015

我在共享主機(CentOS)上執行 wordpress 站點。僅當我將上傳目錄設置為不安全的 777 時,通過 wordpress 上傳才有效。

上傳目錄由使用者和組 psacln 擁有(我們在伺服器上使用 plesk)。

在 googlin 周圍仍然無法理解我該怎麼做,以啟用使用者從 wordpress 上傳而不在目錄上設置 777?

謝謝

該目錄需要由執行 PHP 程序的同一使用者擁有。如果你在apache下使用PHP,這個使用者一般是apache。

您可以通過檢查 httpd 的使用者來檢查這一點:

[user@host ~]$ ps aux | grep httpd

你會得到類似這樣的輸出:

[user@host ~]$ ps aux | grep nginx
root      4774  0.0  0.3  11204  3288 ?        Ss   12:20   0:00 /usr/sbin/httpd
apache    4776  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4777  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4778  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4779  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4780  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4781  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4782  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
apache    4783  0.0  0.1  11204  2076 ?        S    12:20   0:00 /usr/sbin/httpd
root      4787  0.0  0.0   5500   716 pts/1    S+   12:20   0:00 grep httpd

在這裡,我執行 apache 並將 PHP 編譯為一個模組,因此將權限更改為 ‘apache’ 將解決您的問題,並允許您將權限重置為 755 或 700,如果您真的有安全意識:

[user@host ~]$ chown apache /path/to/upload/dir
[user@host ~]$ chmod 755 /path/to/upload/dir

根據您的評論,您可以添加apachepsacln到同一個組,更改組所有權並以這種方式對其進行 chmod

[user@host ~]$ sudo groupadd web  
[user@host ~]$ sudo usermod -G web apache  
[user@host ~]$ sudo usermod -G web psacln  
[user@host ~]$ chgrp web /path/to/upload/dir  
[user@host ~]$ chmod 070 /path/to/upload/dir   

您還可以將 575 用於 rwr 權限(所有者、組、其他)

引用自:https://serverfault.com/questions/481419