為 WordPress 設置正確文件權限和所有權的指南
已發表: 2021-10-18
在提高 WordPress 網站的安全性方面,安裝安全插件通常被認為是每個 WordPress 網站都必須遵循的最佳實踐。 但是,人們不太注意設置 WordPress 網站的文件權限和所有權。
但請記住,文件權限和所有權是有助於確保網站整體安全的關鍵要素。 而且,不正確設置它們可能會導致致命錯誤,並可能危及您網站的安全性並使其容易受到攻擊。
通過這篇文章,我將詳細介紹如何在 WordPress 網站中設置適當的文件權限和所有權:文件權限和所有權到底是什麼意思,以及如何正確設置它們。
我還將與您分享不同類型的 WordPress 文件配置以及它們之間的區別。
使用終端更改 FTP 客戶端的權限和所有權
當您閱讀這篇文章時,在幾個部分中,您會發現終端用於更改權限和所有權。
但是,可能你們中的一些人可能想知道為什麼不能使用 FTP 客戶端來滿足這種需求? 我們不使用 FTP 客戶端的原因是它有一些限制。
想知道什麼?
雖然 FTP 客戶端確實可以幫助傳輸文件和更改文件和文件夾的權限,但它會阻止用戶更改所有權設置。
現在,在您開始設置文件權限和所有權之前,請確保使用“SSH”命令登錄到您的服務器。
如果您不熟悉使用 Linux 命令,那麼您可以通過閱讀文章來更好地理解:“ Linux 命令簡介。 ”
了解組和用戶之間的區別
在深入了解任何技術之前,您需要熟悉的一個重要概念是用戶或組之間的差異。
這是因為,用戶和組都密切相關,並且用於定義權限。
用戶基本上是一個可以訪問計算機系統的帳戶,而一個幫助識別一組用戶的組。
這意味著當您需要使用 FTP 客戶端傳輸文件時,您需要使用您的用戶帳戶登錄您的主服務器。 根據您的虛擬主機如何設置您的用戶帳戶,您可能是一個或多個組的一部分。
本質上,您可以將“用戶”和“組”視為 WordPress 用戶角色。 這兩個概念在上下文方式上是相同的,但是,前者在服務器上使用。
使用戶和組重要的是它們有助於識別文件和文件夾權限。
作為特定文件所有者的任何用戶通常對該文件擁有完全的權限; 與所有者屬於同一組的其他一些用戶對該文件的權限較小。 最後,其他所有人都不會對該文件擁有任何特權。
文件權限到底是什麼意思?
因此,既然您已經了解了文件權限和所有權的一些基本方面,現在讓我們談談 WordPress 文件權限的確切含義。
簡單來說,權限是使用戶有權讀取、寫入、修改和訪問屬於網站的不同文件和目錄的東西。
在 WordPress 中,權限通常由一組不同的數字突出顯示,例如:644 或 777。這些數字也稱為“權限模式”。
如果您是一名程序員並且以前曾使用過 WordPress 文件和插件,那麼您很可能會偶然發現以下情況:某個程序要求更改與某些特定文件和目錄關聯的權限,因為它們無法由一個插件。
簡單地說,為了讓您的 Web 服務器能夠訪問文件中的任何內容,您需要更改文件的權限。
通常,WordPress 中的權限模式被稱為語句:“誰可以做什麼”,每個(權限模式的)數字值都代表該語句的“誰”部分。
- 第一個數值對應於擁有文件所有權的用戶帳戶可以做什麼。
- 第二個數字
value 對應於所有其他用戶帳戶(屬於擁有該文件的組的一部分)可以執行的操作。 - 第三個數值代表
剩餘的用戶帳戶可以做什麼。
接下來,在權限模式下,數字代表
編程語句的“什麼”部分,基本上是以下數字的“組合之和”:
- 4:讀取一個文件,或將許多不同名稱的文件放在特定文件夾中
- 2:寫入或修改文件,或允許修改特定文件夾的內容。
- 1:執行或運行文件,或幫助提供對特定文件夾內文件的訪問。
上面提到的數字實際上是與權限模式的“誰”部分相關聯的權限。
注意:權限可能因一台主機而異。
了解應該如何修改權限模式
FTP 客戶端提供了一個界面,允許以非常方便的方式更改所有文件和文件夾的權限。 FTP 客戶端的界面如下所示:

您甚至可以使用服務器的終端更改您的 WordPress 網站文件的權限模式,但您必須有權訪問該終端。 除了可以訪問終端之外,您還可以使用“chmod”命令對特定文件的權限模式進行所需的更改:
須藤 chmod 644
現在,要修改站點的所有文件(和文件夾),您必須使用 chmod 命令和 find 命令,如下所示:
須藤找到。 -type f -exec chmod 644 {} +
看一下 WordPress 服務器配置
在開始更改 WordPress 文件權限之前,首先熟悉設置服務器的過程對您來說非常重要。
您可以找到許多不同的服務器配置,它們需要一組不同的權限模式才能使 WordPress 站點以適當和安全的方式工作。
但是,我將只分享兩個最重要和最常用的配置,以及如何為這些配置設置適當的文件權限。
1. 標準服務器配置 - 此 WordPress 配置在用戶帳戶和 Web 服務器之間沒有任何關係。
這是因為配置要求 Web 服務器必須作為任何其他用戶帳戶運行。
在我們開始為標準服務器配置的文件設置權限之前,我們必須考慮以下因素對文件和文件夾的所有權進行一些調整:
- 您的用戶帳戶必須擁有 WordPress 安裝的所有文件和文件夾。
- 您的用戶帳戶和 Web 服務器的另一個用戶帳戶應屬於同一組。
您可以使用服務器終端中的“groups”命令找出與您的用戶帳戶相關聯的組。 並且,要找出您的 Web 服務器所屬的組,請使用以下 PHP 腳本:
迴聲執行(“組”);
如果您遇到用戶和 Web 服務器屬於不同組的情況,那麼您可以通過在終端中使用以下提供的命令將用戶添加到 Web 服務器的任何組:
sudo usermod -a -G <a-the-group-name> mygroup
為了確保您的用戶帳戶可以訪問您的 WordPress 文件夾中的所有內容並屬於新創建的共享組,只需在您的 WordPress 安裝文件夾中運行以下提到的命令:
須藤找到。 -exec chown mygroup:a-the-group-name {} +
遵守上述所有命令將確保您的 WordPress 網站的所有文件和文件夾都擁有正確的所有權。
最後,您所要做的就是調整文件和文件夾的權限模式。 為此,您必須牢記以下要點:
- 所有文件都需要有 664 權限模式。
- 所有文件夾都需要有 775 權限模式。
- wp-config.php文件的權限模式應該是660。
使用 FTP 客戶端修改權限模式,或簡單地使用 WordPress 安裝目錄中的以下命令來滿足此類需求:
須藤找到。 -type f -exec chmod 664 {} +
須藤找到。 -type d -exec chmod 775 {} +
須藤 chmod 660 wp-config.php
2.共享服務器(或SuEXEC)配置:與標準的WordPress服務器配置相比,共享服務器配置的權限可以以非常簡單的方式實現。
這是因為,我們不需要強調設置所有權,因為 Web 服務器擁有文件和文件夾。 這意味著我們的用戶帳戶和 Web 服務器都是所有者,並且具有相同的權限。
因此,我們所要做的就是考慮以下列出的關鍵點來修改權限模式:
- 所有文件都應該是 644。
- 你所有的文件夾都應該是 755。
- wp-config.php文件的權限模式應該是600。
要更改文件和文件夾的權限,只需在 WordPress 網站目錄中使用以下命令:
須藤找到。 -type f -exec chmod 644 {} +
須藤找到。 -type d -exec chmod 755 {} +
sudo chmod 600 wp-config.php
最後的話
您必須考慮的另一件重要的事情是避免使用“777”權限模式,因為它允許任何人訪問文件列表,並允許對文件夾中的任何文件進行修改。
很明顯,將文件的訪問權限授予所有人對您的網站安全不利,因為惡意用戶可以在文件中放置可能危及您網站安全的代碼。
希望這篇文章能讓您更好地了解設置 WordPress 網站文件權限和所有權的正確方法。
作者簡介:
Jack Calder 是 Web 開發技術方面的大師。 他按時成功地完成了這麼多項目。 現在,他是 SKT 主題的一些潛在客戶的 PSD 到 WordPress 轉換服務提供商。