我想知道是否有可能允许人们从我的网站编写和执行PHP代码而不使用" eval"由于风险。 我已经google了,我确实找到了一些答案,而不是我正在寻找的答案(call_user_func)。 这不是我要找的,因为它不允许人们运行完整的PHP脚本。
这是执行它的一小部分人,因此服务器负载不会成为问题。
编辑1:用户不应该破坏/删除文件; 用户应该能够创建完整的脚本。 用户应该能够运行HTML代码,但只要使用php标签就会触发php。
答案 0 :(得分:2)
你可以围绕php编写自己的包装器进程,使用ptrace
来控制子php进程的执行,以防止它打开文件句柄,连接到网络等。
这样,即使人们决定尝试在eval中使用恶意代码,系统调用也会在本机级别被阻止。