You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress上传插件提示“The link you followed has expired”问题求助

问题场景

VPS部署的WordPress(Nginx作反向代理)中,上传插件时触发「The link you followed has expired」报错。已尝试修改主题functions.php、CLI版本PHP配置、wp-config.php均无效,此前上传主题时曾配置过Nginx的client_max_body_size。


1. 核心修正:修改PHP-FPM配置文件(而非CLI版)

你之前修改的/etc/php/8.1/cli/php.ini是PHP命令行版本的配置,Nginx搭配的是PHP-FPM进程,两者不共用配置文件。找到FPM对应的配置文件:

  • 常规路径:Debian/Ubuntu系为/etc/php/8.1/fpm/php.ini,CentOS可能在/etc/php/8.1/php-fpm.d/www.conf或同目录下的独立ini文件
  • 编辑文件,设置以下参数:
    upload_max_filesize = 256M
    post_max_size = 256M
    max_execution_time = 300
    max_input_vars = 3000
    
  • 保存后必须重启PHP-FPM服务:
    sudo systemctl restart php8.1-fpm
    

2. 确保Nginx的client_max_body_size全局生效

之前添加的client_max_body_size 20M;可能范围覆盖不全,或需要调整为匹配PHP的256M:

  • 打开nginx.conf或站点专属配置文件(比如/etc/nginx/sites-available/your-domain.conf)
  • 在http块、server块或者处理PHP的location ~ \.php$块中添加/修改:
    client_max_body_size 256M;
    
  • 重启Nginx生效:
    sudo systemctl restart nginx
    

3. 修正wp-config.php的配置位置

将自定义配置代码移到/* That's all, stop editing! Happy publishing. */这行之前,WordPress不会读取该行之后的自定义配置:

@ini_set('upload_max_filesize', '256M');
@ini_set('post_max_size', '256M');
@ini_set('max_execution_time', '300');
@ini_set('max_input_vars', 3000);
define('WP_MEMORY_LIMIT', '256M');
define('FS_METHOD','direct');

4. 快速验证配置有效性

先上传一个10M以内的插件压缩包测试:

  • 若能上传,说明大文件限制未解除,回头检查PHP和Nginx的配置是否写错、服务是否正常重启
  • 若仍报错,检查服务器磁盘空间:
    df -h
    
    磁盘满额也会导致上传失败。

5. 额外排查:主题/插件冲突

如果以上操作都无效,临时切换到WordPress默认主题(如Twenty Twenty-Four),关闭所有已激活插件后再尝试上传——个别主题的自定义函数可能覆盖了全局配置。


内容的提问来源于stack exchange,提问作者Zak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 06:24:18