Ubuntu下PHP安全模式配置方法详解
在较新版本的PHP(例如PHP 7.4及更高版本)中,safe_mode已经被移除 不过,如果你还在维护一些运行在旧版PHP环境上的项目,可能仍然需要配置safe_mode。下面这几个步骤,能帮你把它设置起来。 首先,找到并打开PHP的配置文件php.ini。这个文件的位置取决于你的PHP版本和运行
在较新版本的PHP(例如PHP 7.4及更高版本)中,safe_mode已经被移除
不过,如果你还在维护一些运行在旧版PHP环境上的项目,可能仍然需要配置safe_mode。下面这几个步骤,能帮你把它设置起来。

-
首先,找到并打开PHP的配置文件
php.ini。这个文件的位置取决于你的PHP版本和运行方式:如果是通过Apache服务器运行,通常路径是/etc/php/{php_version}/apache2/php.ini;如果是命令行模式,则一般在/etc/php/{php_version}/cli/php.ini。记得把{php_version}换成你实际使用的版本号,比如7.2。用你熟悉的文本编辑器打开就行,例如:
sudo nano /etc/php/7.2/apache2/php.ini -
接着,在
php.ini文件里搜索safe_mode这个配置项。如果没找到,可以直接在文件末尾加上这么一行:safe_mode = On -
(可选步骤)如果想进一步限制PHP脚本只能访问某些特定目录,可以设置
safe_mode_include_dir。比如像这样:safe_mode_include_dir = "/var/www/html/:/tmp/" -
完成修改后,保存并关闭
php.ini文件。 -
最后一步,重启Web服务让配置生效。如果你用的是Apache,运行这条命令:
sudo systemctl restart apache2如果是Nginx配合PHP-FPM,则需要重启两个服务:
sudo systemctl restart nginxsudo systemctl restart php{php_version}-fpm同样,别忘了把
{php_version}替换成实际的版本号,例如7.2。
到这里,safe_mode就已经启用了。不过得提醒一句:开启这个模式可能会对某些应用程序的功能造成影响,动手之前最好先充分测试一下。话说回来,如果条件允许,还是建议升级到更新的PHP版本——毕竟现代的安全机制,可比safe_mode要灵活和强大得多。
