在Direct Admin修改max_input_vars后仍显示1000,求解决方法
解决max_input_vars修改后仍显示1000的问题
以下是排查和解决的具体步骤:
确认修改的是当前网站使用的PHP版本配置
Direct Admin通常支持多PHP版本共存,先在控制器中输出phpinfo(),查看当前PHP版本以及加载的php.ini文件路径,确保你在Direct Admin中修改的是对应版本的配置,而非其他未被使用的PHP版本。检查是否存在局部配置覆盖
网站根目录下的.user.ini、.htaccess(Apache环境)或Nginx配置文件中的PHP段,可能会覆盖全局设置。比如.htaccess中如果有php_value max_input_vars 1000,会直接覆盖你在Direct Admin中的修改,需要检查这些文件并删除或修改对应配置。重启相关服务
修改PHP配置后必须重启服务才能生效:- Apache环境:执行命令
service httpd restart - PHP-FPM环境:根据版本执行对应命令,比如PHP7.4为
service php-fpm74 restart
也可以在Direct Admin后台找到服务重启选项操作。
- Apache环境:执行命令
验证代码中的变量名是否正确
检查你打印的变量名是否为max_input_vars(注意末尾的s),正确的代码应该是:echo ini_get('max_input_vars');如果写成
max_input_var(少了s),会读取不到正确配置,返回默认值1000。清除框架缓存
如果你使用Laravel、WordPress等框架/系统,它们可能会缓存配置信息。需要清除框架缓存:- Laravel:执行
php artisan config:clear - WordPress:删除
wp-content/cache目录下的缓存文件,或通过插件清除缓存。
- Laravel:执行
确认主机商是否限制参数修改
部分主机商会限制某些PHP参数的修改权限,如果以上步骤都无效,联系主机商确认是否放开了max_input_vars的修改权限。
内容的提问来源于stack exchange,提问作者Hamid Raza
相关产品推荐
相关产品推荐

