信科网络 · 11 年只做 WordPress | 建站 / 主题 / 插件 / 商城 / 迁移 / 托管 | 累计服务 3000+ 企业 | 源码全交付
服务热线:13280692153 邮箱:web@wordpressx.com
工作日 08:30-18:0013280692153 免费诊断
首页/WordPress 教程/WordPress 权限与角色:文件权限、文章权限与角色分配
BLOG

WordPress 权限与角色:文件权限、文章权限与角色分配

分类 发布 2026-10-15

WordPress 的权限分两层:一层是文件系统的 755/644,一层是后台的角色与能力。混在一起谈就会出现「明明是管理员却传不了图」这种怪事——那其实是目录不可写,跟角色一个字节的关系都没有。

五个默认角色的能力边界

WordPress 只内置五个角色,能力(capability)一共有几十项,常见的差别集中在这八项:

能力 订阅者 投稿者 作者 编辑 管理员
登录并阅读后台 可以 可以 可以 可以 可以
撰写草稿 不能 可以 可以 可以 可以
上传媒体文件 不能 不能 可以 可以 可以
发布文章 不能 不能 可以 可以 可以
编辑他人文章 不能 不能 不能 可以 可以
管理分类与标签 不能 不能 不能 可以 可以
安装插件与主题 不能 不能 不能 不能 可以
管理用户与角色 不能 不能 不能 不能 可以

订阅者除了维护自己的资料几乎什么都做不了,是开放注册时唯一安全的默认角色。投稿者能写不能发,适合外部投稿——稿子进后台待审,编辑看过再发。作者能发自己的但碰不到别人的。编辑是全站内容的管家,却动不了插件和用户,这条边界是刻意设计的:内容权限和技术权限必须分开,否则一个被盗的编辑账号就能装后门插件。

这些能力存在 wp_usermeta 表的 wp_capabilities 字段里,序列化后的数组,形如 a:1:{s:13:”administrator”;b:1;}。改角色本质就是改这一行,所以任何角色调整前都该备份 usermeta,这一点在多人站点上尤其重要。

文件权限:755 / 644,以及 777 的代价

标准配置只有两个数字:目录 755,文件 644。拆开看,755 是所有者可读写执行、同组可读可执行、其他人可读可执行;644 是所有者可读写、其他人只读。

路径 目录 文件 说明
站点根目录 755 644 wp-config.php 建议 600 或 640
wp-content/ 755 644 不要 777
wp-content/uploads/ 755 644 需要 Web 用户可写
wp-content/plugins/ 755 644 装插件时才临时提权

777 的意思是任何人都能读、写、执行。在共享主机上,同服务器其他站点的进程也能写你的 PHP 文件,一个站被拿下,整台机器沦陷。上传目录 777 更直接——攻击者传一个 shell 进去就能执行系统命令,这是 WordPress 被黑最常见的入口,善后流程见 被黑修复。

批量修正的命令:

cd /var/www/html
find . -type d -exec chmod 755 {} ;
find . -type f -exec chmod 644 {} ;
chown -R www-data:www-data .
chmod 640 wp-config.php

属主比数字更重要。文件属主是 root、PHP 却以 www-data 运行,给 755 也写不进去;反过来属主是 www-data 又给了 777,等于把写权限开给所有人。先用 ps aux | grep php-fpm 确认运行用户,再把整站属主改成它,最后才调数字。

还有一类麻烦:宝塔、cPanel 这类面板会自动改权限,手动 chmod 完过一阵又变回去。这时要调面板的默认权限策略,或者关掉它的防跨站锁定,否则改了等于没改。改完用一个简单的探针验证:在 uploads 目录里手动建一个文件,能建成功就说明写权限通了。

上传失败和「无法创建目录」

后台提示「无法创建目录 wp-content/uploads/2026/11」,八成是上传目录不存在或不可写。检查顺序固定为四步:

  1. ls -ld wp-content/uploads 看属主和权限。
  2. 看 wp-config.php 里有没有 UPLOADS 常量把上传目录指到了别处。
  3. 看磁盘是不是满了(df -h),inode 是不是耗尽(df -i)。
  4. 看 SELinux 是否拦截(getenforce,临时 setenforce 0 验证)。

如果后台一直提示输入 FTP 账号,说明 WordPress 判断文件系统不可直接写。在 wp-config.php 里加一行可解:

define( 'FS_METHOD', 'direct' );
define( 'DISALLOW_FILE_EDIT', true );

DISALLOW_FILE_EDIT 会关掉后台的插件和主题在线编辑器,是性价比极高的一条加固:即使管理员账号被盗,攻击者也没法直接在后台改 PHP 文件。这是文件权限之外的第二道锁,配上之后 755 的意义才完整。安全插件里同类开关很多,别重复设,设重了容易互相覆盖,参考 安全插件 的配置建议。

文章权限:私有、密码保护与可见范围

单篇文章的可见性在编辑页右侧的「公开」框里改,四种状态的实际效果差别不小:

状态 谁能看 出现在列表页 适合
公开 所有人 是 正常内容
密码保护 知道密码的人 是,标题和摘要可见 给客户预览
私有 作者本人与管理员 否 内部草稿
定时 到点后所有人 到时出现 预热内容

密码保护的文章,标题和摘要仍然出现在列表页和 RSS 里,只有正文被锁住。要连标题都藏起来只能设成私有,私有文章不进任何归档页,也不进 sitemap,这一点常被用来做客户预览。

如果需要「某个角色才能看某类内容」,WordPress 没有内置开关,只能靠插件(Members、User Role Editor)或自己写判断。用短代码包一层是最轻的做法:

add_shortcode( 'vip', function( $atts, $content = '' ) {
    if ( ! is_user_logged_in() || ! current_user_can( 'read' ) ) {
        return '<p>该内容仅限登录用户查看。</p>';
    }
    return $content;
} );

但这只能挡模板输出,挡不住直接查数据库,也挡不住 REST API 和 feed。真要保护内容,得在 rest_prepare_post、the_content_feed 上一起过滤,工作量不小。所以别拿它做付费墙,商业内容还是用专门插件。

多作者站点的角色分配

一个正常运转的编辑部大概是这个结构:

  • 1 个管理员:只给站长或技术负责人,日常不用它写文章。
  • 1 到 2 个编辑:审稿、排期、管分类。
  • 若干作者:签约写手,只能发自己的稿子。
  • 外部投稿:给投稿者,或者干脆用表单收集,不进后台。

核心原则是最小权限:日常写作用作者账号,需要动插件时才切管理员。管理员被盗的损失是整站,作者被盗最多是几篇垃圾文章。同一道理,给客户开后台时永远不要给管理员,给编辑就够,交付时留一个管理员账号自己保管。

角色调整后要验证,不能凭印象。用 WP-CLI 查和改:

wp user list --fields=ID,user_login,roles
wp user add-role 12 editor
wp user remove-role 12 author
wp cap list editor

wp cap list 会把该角色拥有的全部能力列出来,比自己猜准得多。想临时给某个人加一项能力用 wp user add-cap,比改角色精细,但一定要留记录,否则半年后没人知道谁为什么能删文章。反过来,怀疑某个账号权限过大时,wp user list-caps 12 能直接列出这个人实际拥有的能力,比重读角色定义快。

最后两条纪律:改角色、改权限之前先备份数据库,至少导出 wp_usermeta 和 wp_options 两张表,角色配错会导致所有人进不去后台,恢复成本很高,备份方法见 备份与恢复;文件权限和角色清单每季度过一遍,写进运维检查表,这一条通常挂在 安全加固 的清单里。

这两个层面的权限还有个隐含关系:文件权限决定了「谁能改代码」,角色决定了「谁能在后台干什么」。后台角色再严,文件权限是 777,等于前门锁着后门大开。所以排查权限问题时,永远先看文件系统,再看后台角色,顺序别倒过来。日常操作入口不熟的,可以在 后台入门 里把用户管理和媒体库的位置过一遍。

INDUSTRIAL BELT

扎根中国制造产业带
懂工厂,才懂出海

从胶东半岛到珠三角,从长三角到中原腹地,每一片产业集群都有自己的出口节奏与买家画像。信科网络长期扎根产业一线,把工厂的产品语言翻译成海外采购商听得懂的搜索语言,让每一分投入都对着真实的询盘去。

xiongxian

雄县外贸网站建设

河北省保定市雄县位于东经116°06',北纬38°59'。平均海拔10米。处于冀中平原的京、津、保三角腹地,南倚“华北明珠”白洋淀,北靠“京南小香港”___白…

kaizhou

开州外贸网站建设

开州区隶属于重庆市,位于重庆市东北部,三峡库区小江支流回水末端,介于北纬30°49′30″-31°41′30″、东经107°55′48″-108°54′之间,西邻四川省开江县,北依大巴山接城口县和四川省宣汉县,东毗云…

fengdou

丰都外贸建站

丰都县位于重庆市版图中心,东经107°28′03″-108°12′37″,北纬29°33′18″-30°16′25″之间,呈西北—东南走向分布,南北长87km,东西宽54km,幅员面积2901km2。长江横穿县境47km,水上距离重庆主…

zhongqing

重庆外贸建站

重庆,简称渝或巴,是中华人民共和国中西部唯一的直辖市、国家中心城市、超大城市、国际大都市,长江上游地区的经济、金融、科创、航运和商贸物流中心,西部大开发重要的战略支点、“一带一路”…

zaoqiang

枣强WordPress建站

枣强县位于河北省东南部,衡水市南端,界于东经115°35′~58′,北纬37°08′~35′之间,总面积892.3平方公里。东隔清凉江与景县、故城相望,西临冀州市,南靠邢台地区南宫市,北接桃城区、武邑县。…

shizhu

石柱WordPress建站

石柱土家族自治县简称石柱县,位于重庆市东部、长江南岸、山峡库区腹心,是集少数民族自治县、三峡库区淹没县、国家扶贫工作重点县于一体的特殊县份。幅员面积3012平方公里,辖32个乡镇,总人…

nanchuan

南川Shopify建站

南川地处四川盆地东南边缘与云贵高原过渡地带,位于重庆市南部,东南与贵州省道真、正安、桐梓县接壤,东北与武隆县为邻,北接涪陵区,西连巴南区、綦江县、万盛区。总面积2602平方千米。总人…

rongcheng

容城Shopify建站

河北省容城县,历史悠久,距今已有2000年的历史,全县总面积314平方公里,总人口25万人。地理位置得天独厚。位于河北省中部,京、津、保腹地,距首都北京和天津直辖市均为120公里,两个小时的…

yuanzhou

原州外贸推广

原州区,隶属于宁夏回族自治区固原市,地处宁夏南部,六盘山东北麓,黄土高原中西部,东邻彭阳县,南接泾源县,西连西吉县,北靠海原县、同心县,东北、西南分别与甘肃环县、隆德县毗壤,是固…

qingtongxia

青铜峡外贸推广

青铜峡市位于黄河上游宁夏平原中部,地势平坦,牛首、峡口两山对峙,黄河穿峡而过,山光水色相映,宛如开然铜镜,“青铜峡”由此而得名。地处西北内陆,东部季风区与西部干旱区域的交汇地带,属…

wuxi

巫溪Google SEO

巫溪县地处大巴山东段南麓的渝、陕、鄂三省(市)结合部分,东接湖北省神农架林区、竹溪县,南临重庆市奉节、巫山两县,西与重庆开县、云阳接壤,北连重庆城口县和陕西省镇坪县。  

xianxian

献县Google SEO

献县历史悠久,夏商时期属冀州,春秋时属燕国,战国时属燕、赵、秦。早在春秋战国时期。境内就形成了具有一定影响力的城市——乐成。汉高祖六年(公元前201年)置河间郡,汉文帝二年…

yubei

渝北GEO优化

重庆市渝北区位于重庆市区北部,是1994年12月17日经国务院批准,在撤销原江北县建制基础上设立的新区。渝北区是重庆市的行政区,原为江北县,南端为主城区一部分的龙溪镇,北端与四川省接壤,…

shenzhou

深州GEO优化

深州市旧称深州,上古为冀州大陆之域。春秋时为晋地。战国属赵。秦属钜鹿郡。汉为下博县。隋开皇十六年(公元五九六年),于安平置深州,以城西故深池得名。尔后迭经废置,州城屡迁。唐徙州治…

fucheng

阜城谷歌SEM

阜城县是河北省衡水市下辖的一个县。面积698平方千米,人口32万。邮政编码053700。阜城县人文荟萃.历史上出现过不少的学者名流,北齐的刘昼,北周的熊安生,民国初期的京剧著名表演艺术家荀慧生,…

fuling

涪陵谷歌SEM

重庆市涪陵区,邑枕长、乌两江,素为乌江流域物资集散地,有渝东南门户之称,是闻名遐迩的中国“榨菜之乡”。全区幅员面积2946平方公里,辖1个经济技术开发区、1个私营经济示范区和44个乡镇、街…

jingxian

景县Facebook广告

景县位于河北省东南部,大运河西岸,全县辖9镇7乡,849个行政村,总面积1183平方公里。全县呈簸箕形,由西南向东北逐渐倾斜坦,最高点海拔25米,最低点14.1米。属暖温带半湿润大陆性气候,四季…

xingqing

兴庆Facebook广告

金凤区于2002年11月1日成立,是宁夏回族自治区首府银川市的市辖区之一,位于市区中部,东到唐徕渠,西到包兰铁路,南接永宁县,北临贺兰县,辖良田、丰登2个镇,上海西路、北京中路、长城中路…

jizhou

冀州Yandex推广

冀州市隶属河北省衡水市,地处华北平原腹地,北距首都300公里,西距省会石家庄110公里,辖区总面积918平方公里,东与枣强县(衡水)为邻,南与南宫市、新河县(邢台)接壤,西与宁晋县(邢台)…

cangxian

沧县Yandex推广

沧县位于河北省东南部,冀中平原东部,北冀京津,东邻渤海,地理坐标在北纬38°5′至38°3′,东经116°27′至117°9′之间。县政府驻沧州市新华区,全县总面积1527平方公里,其中耕地面积129万亩,总…

hengshui

衡水TikTok推广

衡水市位于河北省东南部,东与沧州市和山东省德州市毗邻,西与石家庄市接壤,南与邢台市相连,北与保定市交界;南北长125.5公里,东西宽98.13公里,全市辖8县2市1区,总面积5815.4平方公里。衡…

为什么一定要选懂产业带的出海服务商?建材丝网的欧洲建筑商看资质与交期,工业橡塑的中东工程商问耐温与工况,毛皮服饰的俄罗斯分销商算的是季节与毛利。买家不同,决策逻辑就不同;信科网络把这些差异拆进网站结构、关键词地图和投放策略里,用他们习惯的方式出现在他们搜索的地方。