[WordPress] 網站檔案權限修復的正確方法

經手別人的網站常常都會碰到檔案權限被動過的問題。很多時候也不是開發者或網站主自己搞,就是主機商在網站代管的時候動得手腳。

如果針對移轉過的網站要做檔案權限修復或還原,就是可以使用下列的 bash 指令操作:

#!/bin/bash
#
# This script configures WordPress file permissions based on recommendations
# from http://codex.wordpress.org/Hardening_WordPress#File_permissions
#
# 原作: Michael Conigliaro <mike [at] conigliaro [dot] org> 本地化: Chun
#
WP_OWNER=www-data # <-- 這裡輸入伺服器上的角色名稱
WP_GROUP=www-data # <-- 伺服器設定的角色群組(通常都是同上)
WP_ROOT=$1 # <-- WordPress 的根目錄
WS_GROUP=www-data # <-- 如有要改變設定與內容目錄權限群組可以設定這裡,通常不變

# 先處理重置基礎權限部分
find ${WP_ROOT} -exec chown ${WP_OWNER}:${WP_GROUP} {} \;
find ${WP_ROOT} -type d -exec chmod 755 {} \;
find ${WP_ROOT} -type f -exec chmod 644 {} \;

# 改變 wp-config.php 設定檔案的操作權限(如果有的話)
chgrp ${WS_GROUP} ${WP_ROOT}/wp-config.php
chmod 660 ${WP_ROOT}/wp-config.php

# 改變 wp-content 內容目錄的操作權限(如果有的話)
find ${WP_ROOT}/wp-content -exec chgrp ${WS_GROUP} {} \;
find ${WP_ROOT}/wp-content -type d -exec chmod 775 {} \;
find ${WP_ROOT}/wp-content -type f -exec chmod 664 {} \;

Gist: Link

將上述程式碼複製與儲存成 fix-wordpress-permissions.sh 檔案,然後賦予執行能力: chmod +x fix-wordpress-permissions.sh

設定好程式裡指定的權限後,放置於 WordPress 根目錄裡執行下方指令:

./fix-wordpress-permissions.sh .

跑完就大功告成拉~

千萬不要為了貪圖方便就給他隨意把權限大開 777 ,網站被駭或是造成問題都只是剛好而已阿!

Facebook 外掛功能


Share:

作者: Chun

資訊愛好人士。主張「人人都該為了偷懶而進步」。期許自己成為斜槓到變進度條 100% 的年輕人。[//////////____30%_________]

參與討論

2 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *