我有LAMP堆栈服务器(使用vhostconfiguration为apache2)。 我已经有这个服务器上运行的网站。 现在我想要在同一台服务器上托pipe另一个站点。
然而,由第二个网站产生的session_id和会话应独立于第一(现有)网站。 实际上,我所期望的是,两个网站都不应该有对方会话的知识和访问。
这是可能的PHP在单个Apache服务器上? 我怎样才能实现这种隔离?
我会build议使用Apache的SUExec wrapper ,和mod_fastcgi (或mod_fastcgid)。
mod_fastcgid是一个dynamic工作池,它以特定用户身份执行PHP解释器,而不是在Web浏览器用户ID下执行。 这样,你可以为每个网站创build不同的unix用户。
这不仅有助于将每个网站分开,而且还可以限制潜在中断造成的损害,并有助于提高每个网站的整体隐私意识。
使用fastcgid,每个站点都可以拥有自己的PHP.ini(例如,位于网站用户主目录),在这个个性化的configuration中,您应该能够设置存储保存会话的特定path;
如果将此path设置为/home/website1/tmp/或/home/webiste2/tmp/ ,则每个用户都将拥有自己的存储会话个人path,并使用unix文件权限进行保护。
如果这是一个个人服务器,并且所有的网站都属于你,考虑将会话caching存储在mysql数据库中。 但是这对于多宿主服务器来说并不好。
祝你好运!