我管理linux上的服务器,它有php和suphp的apache。与大多数设置一样,所有程序文件当前都存储在磁盘上。
我想从ram运行suphp。然后我将suphp文件夹中的所有内容(配置文件,文件夹和程序总计约2.8MB)复制到ram。然后在磁盘上,我重命名了该文件夹,因此旧版本无法访问。我使用带有cp的-a开关来保留权限等。
然后我做了两次尝试,这两次都导致了失败。首先,我创建一个名为suphp的链接(使用ln -s),指向ram中的suphp文件夹。然后,当我浏览文件/文件夹结构时,其他所有内容看起来都相同,就好像设置已准备就绪一样。
由于这不起作用,我通过删除suphp符号链接,然后创建一个空的suphp文件夹并将其挂载(使用mount --bind)到ram中的suphp文件夹再次尝试。这甚至没有用。
然后我查看了我的apache error_log,在我尝试这个步骤的过程中,直到我恢复了原始设置,我收到了各种错误消息,其中所有文本都有类似的相同内容:
"(2)没有这样的文件或目录:无法创建子进程:( suphp文件夹位置)/ sbin / suphp为(网站上php文件的完整路径)"。
令我感到困惑的是,为什么它不报告此类文件或目录而不是其他错误......
答案 0 :(得分:0)
如果您的目的是将PHP脚本保留在内存中,请考虑使用像5.5或apc中内置的opcache,请参阅How to use PHP OPCache?