我想为编程教程网站编写一个简单的PHP小提琴
与Code Academy网站类似
示例 Code Academy PHP Fiddle Example
我想过使用Code Mirror作为文本编辑器
但如何执行用户安全编写的PHP代码?
我尝试在他们的编辑器中使用file_put_contents()和file_get_contents
它有效:)是安全的!!
我无法使用runkit之类的扩展程序 因为我在共享主机上:(
答案 0 :(得分:0)
简短的回答:你做不到。您需要某种沙箱,这将比您在共享主机上获得更多的系统访问权限。您需要使用自己的沙盒PHP可执行文件设置自己的主机才能实现此目的。
如果你有,那绝对不安全。
答案 1 :(得分:0)
我认为最安全的方法是编辑PHP源代码并删除最危险的函数,编译它并从真正的PHP运行这个新的PHP环境。
解析用户输入并发送到eval
在我看来是一个安全漏洞。你将无法检测到像
$a = 'ma';
$a .= 'il';
{$a}(...);
等