作为webhostingcorner中的全新function,我有几个关于如何为SaaS应用程序实现/设置Web服务器的问题。 我即将租用自己的服务器,以便在两个月内推出新产品(CMS)。 开发这个系统对我来说并不算什么,但是实现它的正确方法是。
所以,让我们说这是我的情况:
我正在考虑像这样的dirstructure:
./CMS/ [all CMS files]
./Websites/*/ [all websites]
我的主机提供商将安装更新到操作系统(CentOS,最新)和pipe理面板(直接pipe理)。
有没有人有这方面的经验? 或者你有一些关于它的想法? 请join对话,因为我完全陌生。
你有没有考虑过虚拟化战略? 这样,您可以轻松pipe理客户端可用的磁盘空间量。 你可以确保客户端不能访问对方的东西。 而且您可以通过确保虚拟机是通过模板自动安装还是通过黄金映像来准备向更多客户端扩展。 如果您需要更多硬件,只需添加其他主机并开始部署虚拟机或将已在运行的虚拟机移动到新主机。 此外,正确设置虚拟基础架构将使您能够快速将虚拟机迁移到Amazon EC2或RackSpace等公共云中。 如果你的客户得到了斜杠,把客户端的虚拟服务器放到云中,而不让你的其他客户端陷入困境会更安全。
我没有得到在互联网“SaaS”上广泛使用的那个shiny的新术语,但是让我们join讨论:)
你的软件准备好了吗?
对于磁盘空间配额有几种可能性:
如果我理解得很好,每个人都会得到相同的软件,但可能会添加额外的文件/主题。
我不知道这是否是一个很好的解决scheme,但可以在只读模式下安装参考模板(假设是LVM片),并在写入模式下挂载“主题”上的客户磁盘空间“自定义”文件夹。
这样,您对参考模板所做的所有更改都将被“部署”给所有客户。
告诉更多关于你的愿望和需求,以便我们可以添加更多的build议
为了让它更像一个对话,我会发布一个新的答案。
SaaS的确是一两年以来的新名词,而且越来越受欢迎。 事实上,这只是一个基于服务的合同,与您的客户。 他们租用你的软件以跟上他们的能力;)
我的软件已经准备就绪。 有趣的部分都完成了,displaymodules(模板渲染器)需要优化,但是已经准备好进行testing了。
我可以将使用的磁盘空间中使用的配额与使用的电子邮件空间结合使用吗?
由于所有的客户都在为独特的模板付费,因此安装不会成为一种select。 一个必须具备的东西。
在不了解实际CMS应用程序的所有细节的情况下,具体build议有点难。 但假定CMS软件有一些系统来区分客户端和他们可以访问您的DirectAdmin系统将或多或less地解决其他问题 ; 它能够根据用户的需要(将它们保留在自己的目录中),测量带宽,磁盘空间使用情况并强制执行配额。 它也安装MySQL我认为。
它应该几乎做你想要的, 但有一个catch :只有当你在每个客户端的域上安装你的CMS。 这是你不想要的东西。
所以我会考虑将你的CMS软件链接到每个家庭目录,使其可用。 testing这一点,并非常明白,如果我可以写入您的CMS软件,我可以破解所有其他使用此CMS的客户端。 所以看看设置正确的权限(man chmod / man chown) 。
您应该能够通过将客户端添加到某些组,并且允许Web服务器用户访问一些(存储)目录来解决问题,而客户端本身不能在那里写入。
就我个人而言,我会忘记关于符号链接,磁盘空间确实很便宜,并且将CMS的安装升级到一个坏的状态( 它将会发生 ),所有的客户端同时出现。
每个客户端创build一个安装,我希望这是一个应用程序function来pipe理多个不同的网站与CMS而不是操作系统,这只是一个错误的地方,我build议大家不要离开一个产品声称能够pipe理多个网站,但实际上只需要多个安装。
优点: