我想在我的服务器上托管 php 项目和 asp.net 项目。我有两个主要问题。
1) php 文件扫描我的文件系统。我不希望它访问 /var/www/majorapp/config.xml 并读取数据库或管理员密码。以及其他主机项目的源代码(也使用 php)
2) 跟踪或终止消耗 CPU 或内存的进程。如果某个 php 文件或项目正在执行某些 CPU 密集型操作,我想终止它。如果它也能在 spawn 进程上工作就太好了。
奖励:如果我可以阻止它使用网络,例如访问http://some_site_user_is_ip_banned_at.com或者http://myself.com/project/me/recurseMe
我正在考虑允许用户运行 asp.net prjs,因为我的网站正在使用 asp.net。我的服务器是 linode 虚拟主机上的 apache2。Debian lenny
答案1
一种解决方案是使用 Linux 容器 (LXC) 之类的东西为每个项目提供隔离的环境。此解决方案允许您对内存和 CPU 利用率等内容分配硬性限制,并允许您为每个项目设置网络防火墙等。这也意味着每个项目都有自己的文件系统命名空间。更多信息请见此处:
类似项目包括: