【问题标题】:Need a simple CMS. Should I customise an existing CMS or build from scratch?需要一个简单的 CMS。我应该自定义现有的 CMS 还是从头开始构建?
【发布时间】:2010-02-01 13:10:57
【问题描述】:

我正在构建一个非常简单的网络托管服务,它将迎合 ma 和 pa 类型的小型企业。

现在我的困境是我应该从头开始构建它还是使用现有的 CMS。 CMS 需要可定制,因为我希望构建自己的客户端。我只希望用户必须输入标题和内容。其他所有内容都将对最终用户隐藏。

稍后我希望能够将我自己的自定义构建的 Web 应用程序与给定页面相关联,因此 CMS 需要能够满足这一点。

另一个要求是它需要基于 Java(Groovy 可接受)。

有什么想法吗?

【问题讨论】:

标签: java content-management-system web-hosting


【解决方案1】:

一旦您开始执行用户身份验证、安全性、可扩展性等操作,即使是“简单”的 CMS 也是一个相当复杂的应用程序。您可能会犯很多错误。那里的主要 CMS 存在许多维护问题和安全漏洞,并且有相当多的人才在从事这些工作。如果您认为您的 CMS 会有所不同,我建议不会。您将需要不断更新和维护它。如果您使用现成的解决方案,您应该能够从其他开发人员所做的工作中受益。如果您想编写自己的代码,请考虑定制现成的 CMS 或贡献新功能或修复错误。

自有内容管理系统:

  • 对功能的完全控制
  • 低成本
  • 通俗易懂
  • 只有你自己理解并修复它
  • 没有来自其他开发者的错误修复

现成的 CMS:

  • 您可以简单地安装它,然后专注于增值
  • 更陡峭的学习曲线
  • 大量托管解决方案和在线帮助
  • 如果您不在,很多人都可以管理它
  • 错误修复和安全更新由供应商发布
  • 在定制等方面受到更多限制
  • 需要有人随时掌握更新并安装它们,否则客户可能会成为 WordPress 蠕虫等蠕虫的受害者。使用您自己的 CMS,就不太可能有人专门为您创建蠕虫。 (但您的客户仍面临其他安全问题的风险)。

考虑每个网站面临的典型安全问题:XSS、CSRF、SQL 注入、配置错误、松散的安全性、会话劫持、参数验证错误、竞争条件等。您需要处理所有这些情况,但 CMS供应商已经为您这样做了。

对于您的 Java 要求,Resin Web 服务器附带一个 PHP 解释器,如果您选择 PHP CMS,它可能允许您在 Java 中部署 PHP 应用程序。也应该可以在几个小时内将 PHP 引擎移植到另一个 servlet 容器(我认为是 GPL)。

【讨论】:

  • 我不认为低成本是真的。如果您需要一个还不错的应用程序,您需要投入大量时间(金钱)来运行它。
  • @extraneon:嗯,我所说的低成本是指额外软件的许可。此外,我假设国产服务器的开发成本将分摊到多个客户端,但我认为股票 CMS 的学习曲线也将是。
【解决方案2】:

您绝对应该学习现有的 CMS。从头开始创建一个将满足您的需求。具有实时社区(例如 drupal 或 django)的现有 CMS 将根据他人积累的经验出售基金会。

这样做将有助于跳过创建 CMS 的常见错误,并让您专注于功能和制作产品,而不是构建框架。

【讨论】:

【解决方案3】:

查看 Alfresco 社区版,它基于 Java,并且是第一个与 CMIS 1.0 兼容的版本。您可以在其上构建 Web 客户端/应用程序。它有ftp、webdav、cifs、http接口。

【讨论】:

    【解决方案4】:

    Liferay?您将在 5 分钟内启动并运行。

    基于 Java,支持 Groovy

    如果你想diy,看看CMIS。 (算了,别DIY了)

    【讨论】:

      【解决方案5】:

      我无法想象没有满足这些要求的现有 CMS。虽然不会为你做研究;-)

      【讨论】:

      • 是的,我的困境是我是否将时间花在研究和学习新的 CMS 上是否会更好地从头开始创建它。我的要求相当有限。
      • 滚动自己的游戏从未像您估计的那样简单快捷。
      【解决方案6】:

      如果您想弄清楚 Java EE 技术的某些方面或优点/缺点,最好编写自己的 CMS 来练习。

      但在您执行此操作之前,请通过一些现有的 CMS 来创建优缺点列表。

      所有现有的 CMS/框架/任何东西都不能很好地解决您自己的问题,但它们通常太大而无法涵盖尽可能多的情况。

      还有一件事要考虑。您希望您的 CMS 在 Google App Engine 上运行良好吗?

      【讨论】:

      • 不,不需要使用 GAE。我觉得 GAE 有点太严格了。我可能会使用 Amazon EC2。
      猜你喜欢
      • 2011-05-25
      • 1970-01-01
      • 1970-01-01
      • 2011-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多