WordPress 文件權限 如果你使用 WordPress 已經知道可以自動為你配置好,但是如果你遇到相關問題,這些概念之後才能幫助你你更好地解決問題。
這篇文章為你介紹了 WordPress 文件權限到底是什麼,不管你是未知過文件權限,還是想了解 WordPress 文件權限的相關知識,
這篇文章深度介紹 WordPress 文件權限 以及如何使用它們來保護你的網站。
簡單來講,文件權限控制不同用戶如何與 WordPress 網站服務器上的文件進行數據交互。更具體地說,文件權限控制誰可以讀取、寫入和執行文件:
用戶分為三種不同的“類型”:
每個文件或文件夾都由特定用戶或特定組擁有。每個用戶可以是多個組的成員,但他們只能擁有一個主要組。
例如,當你通過 SFTP 連接到你的網站時,你服務器上的用戶帳戶,並且該用戶帳戶屬於一個或多個組,具體取決於你如何配置服務器。
注意:大多數人不需要掌握“用戶”的概念,因為服務器已經配置好這些信息,最重要的是了解文件權限的功能。如果你還有疑惑,請熟知下,你的服務器已經配置到相關的用戶組信息。
通過文件權限,你可以控制每種類型的用戶(admin、組、公共)可以對服務器上的文件和文件夾執行的操作(讀取、寫入、執行)。
一般來說,admin應該擁有最多的權限;屬於同一組的用戶將擁有相同或更少的權限;公共用戶將擁有與組相同或更少的權限:
admin > 組 > 公共
文件權限的概念與WordPress 角色和能力系統非常相似。如果你是網站的管理員,則你擁有比編輯者更多的控制權。例如,管理員可以安裝新插件,但編輯器不能。
同樣,編輯者比匿名訪問者擁有更多的控制權,即使編輯者的權力不如正式管理員。例如,編輯器可以編輯其他人的博客文章並發布新的博客文章,但編輯器沒有這樣的功能。
文件權限由稱為權限模式的三位數數字表示(例如 777、440)。
數字中的每個數字對應於特定用戶可以執行的操作:
權限模式中的每個數字都是分配給每個動作的數字的總和:
如果你不想授予任何權限,請使用數字0。
同樣,你在權限模式中看到的數字是實體擁有的所有權限的總和。例如,如果admin可以讀取(4) 和寫入(2),則權限模式將為6 (4+2)。
或者,如果admin擁有所有三個權限,則為7 (4+2+1)。
因此,777是最寬限的配置。如:
正因如此,你不會想要在WordPress 網站上將其他人的權限設置為777。我們將在下面詳細討論這一點。
如果你想嘗試一下這個想法,你可以使用chmod 計算器工具查看當你為不同用戶分配不同權限時數字如何變化。
雖然你可能最常遇到數字格式,但有時你也會看到由字母和破折號表示的文件權限。
例如:
rwxr--r--
以下是這種格式的工作原理:
一共有九個字符——前三個適用於admin,後三個適用於使用組,後三個適用於公眾。
在這種格式中,相當於777 的將是rwxrwxrwx.
針對文件權限控制不同訪客對你服務器上的文件執行的哪一項操作,因此它們在 WordPress 安全中起著至關重要的作用。
想像一下,如果你將網站的所有文件和文件夾設置為777。這意味著開放了所有權限,任何人都可以隨意創建新文件、修改現有文件、刪除現有文件、執行腳本等等。甚至可以在網站添加惡意腳本並執行它們,會導致各種問題出現。
但是,文件權限是一種平衡行為,如果你過於嚴格,你的網站也會停止運行。
例如,如果你將權限設置為000,你的網站將完全停止運行,甚至網站無法讀取服務器上的任何文件。
出於這個原因,WordPress 的最佳文件權限總是介於000(無法獲取任何權限)和777(任何人都擁有所有權限)之間。
文件權限也可能很棘手,有可能在實際應用中遇到其他問題。例如,444是你網站的htaccess文件的非常安全的設置。
如果你設置,你很可能會遇到一些插件問題需要解決,因此還是需要改寫一下htaccess文件配置(如:緩存插件像WP火箭和W3總緩存)。
如果你正在使用需要改寫訪問權限的插件之一,你可能需要切換到稍微寬鬆的 644 甚至 666 ,具體還是取決於你的 Web 服務器的配置方式。
簡單來說,其實大多數人不需要手動更改文件權限。
如果你使用服務器的WordPress.org的話,配置文件權限已經包含在安裝過程中,相對優質的服務器都會自動設置最佳文件權限。如果你在WordPress服務器作為後台,你可以確信已配置合理的文件權限——這是作為自動託管服務器所運行的一部分,目的是便於網站管理者管理網站。
因此,如果你使用服務器的自動安裝程序並且你的 WordPress 網站運行良好,你根本不需要修改網站的文件權限。
但是,如果你自己手動安裝 WordPress,可能會出現問題。在插件安裝和使用過程中,你很大幾率會遇到文件權限問題,就像我們上述文章中的緩存插件的案例。
窗体顶端
首先,要注意最佳文件權限部分取決於你的託管系統的配置方式。對一種系統來說是最佳和安全的,對其他系統來說不一定是這樣;特別是對於使用suEXEC 的共享服務器來說。
解決這個問題的一個很好的經驗法則是:從最寬鬆的配置開始,只根據需要添加權限以網站正常運行。例如,在查看wp-config.php文件是,你會看到400到644 之間的任何值。如果你不確定從哪裡開始,你嘗試從400開始,你就會了解這樣配置會導致網站出現真麼問題,並且如果遇到問題,你可以一步一步修改權限,直到網頁運作正常。
無論如何,切記不可以吧權限設置為 777。
一般來說,WordPress的正確文件權限應該如下:
但是,有一些特定的豁免需要注意:
你網站的 wp-config.php 文件是一個超級敏感的文件,其中包含你網站的數據庫憑據和非常重要的信息。
wp-config.php文件的一個很好的起點是644,這是Kinsta使用的。但是,你會在這篇文章得到許多其他建議,包括640和600。為了可以鎖定更多目標,有些人甚至使用444。
但是,如果你使用444,則可能會導致問題,因為大多數的 WordPress 插件依賴wp-config.php文件的寫入權限。
你網站的htaccess文件是另一個值得特別注意的重要配置文件。
htaccess 權限的一個很好的起點是644,這是WordPress Codex 推薦的。一部分程序員還推薦444,不過如果你使用444,它可能會收到限制,從而需要寫入htaccess文件的插件(例如大多數緩存插件)。
注意:如果你使用了自動託管,你將沒有htaccess文件,因為使用Nginx 網絡服務器來提高性能。htaccess文件只是Apache 網絡服務器上的一項功能。
nginx.conf 權限
相同的htaccess文件權限也適用於nginx.conf,如果你的服務器使用 Nginx,為主要配置文件。
在顯眼的位置找到管理網站(errors and all)要用到的所有工具。
在Kinsta,nginx.conf文件使用644。
如果你想要一種快速、非技術性的方法來篩查你網站的文件權限是否存在問題,你可以使用WordPress.org 上的免費iThemes Security 插件。
你還可以使用 FTP 或 cPanel 文件管理器,我們將在下一節中向你展示 - 我們首先只是將這個插件共享為一種檢測潛在問題的快速方法。
激活插件後,轉到“安全”→“設置”,然後點擊”文件權限“下”的“顯示詳細信息”按鈕:
文件權限工具在 WordPress 中的位置
在這裡,你將找到當前WordPress 文件權限以及它們與 iThemes Security 推薦的文件權限作比較。你可以看到的iThemes建議444為WP-config.php文件、nginx.conf或htaccess文件(這就是為什麼你看到nginx.conf,Kinsta使用Nginx的配置;但你當看到的htaccess,則是因為你的服務器使用Apache) .
切記444會導致與部分插件發生衝突,謹慎使用。
如果你在選擇之後不想繼續使用該插件,建議將其刪除。
如何在需要時更改 WordPress 網站的文件權限。你可以使用多種不同的方法:
如果你知道如何使用 FTP/SFTP連接到你的服務器,任何優質的 FTP 客戶端都應該能讓你快速更改文件權限。
使用FileZilla向你展示它是如何工作的,這是一種較受歡迎的免費SEO客戶端。
使用 SFTP 連接到服務器後,說明文字要編輯的文件/文件夾並選擇文件權限:
然後,你可以使用複選框或直接輸入數字:
如果你的服務器提供cPanel,你可以使用 cPanel 的文件管理器工具來編輯 WordPress 文件權限。
在 cPanel 文件管理器中,右鍵單擊要編輯的文件或文件夾,然後選擇更改權限:
然後,選中相關框以授予權限。當你損壞時,你會在底部看到所有發生的變化:
WordPress 文件權限是創建安全、運行良好的網站的重要組成部分。但是你不必煩惱文件權限,因為你使用服務器的自動安裝程序插件,大多數服務器都會正確配置所有內容。
但是,如果你正在手動安裝 WordPress,或者你的網站的原始文件權限被某些插件弄亂了,你需要重新整理編輯你網站的文件權限。
一般來說,WordPress目錄權限應該是755WordPress文件權限應該是644。某些文件除外(例如:wp-config.php文件和你服務器的htaccess或nginx.conf文件,相對的稍微減少一些許可)。
切記一點,三次不可以在實時網站上將文件權限設置77,這樣才能讓你的網站和持續的安全漏洞。
伺服器/主機推介:
官網
官網連結可按圖片