4

我从头开始编写自己的 Php 内容管理系统的代码大约已经完成了一半,但现在我即将完成编写新功能并使其看起来不错的代码,现在正面临着安全性的大问题。我对 Php 的安全方面知之甚少,除了它很容易受到 SQL 注入等攻击。假设我的网站将有大量用户生成的内容,就像 facebook,一个人可以自己保护的东西还是我最好付钱请人为我做这件事?如果是这样,有人知道那要花多少钱吗?

任何反馈将不胜感激。

更新:对http://www.incapsula.com有任何意见吗?

4

6 回答 6

8

优点:

  • 构建自己的 CMS 很有趣。
  • 你会学到很多东西。这可能是学习 PHP 的最佳方式,因为您将不得不处理它的许多不同方面。

缺点:

  • 您的第一个 CMS 将始终具有“有趣”的设计。
  • 你会有错误和安全漏洞(但大多数时候,人们不会注意到安全漏洞)。;)
  • 与使用现有 CMS 构建网站所需的时间相比,您将不得不在 CMS 上花费(更多)时间。

结论:

  • 当然,您应该建立自己的 CMS!如果您从未构建过自己的 CMS,那么您就不是真正的 PHP 程序员。
于 2012-04-07T09:08:35.943 回答
8

有这么多成熟的 PHP CMS 系统可用,我能想到自己编写一个的唯一原因是作为练习(学习一些东西)、作为挑战(看看你是否可以),或者如果你需要一些特定的现有的没有的功能。即使您确实想要一个特殊功能,我仍然会考虑扩展现有的 CMS,而不是从头开始编写一个 - 其中许多都适合模块和/或插件。

于 2012-04-07T08:52:01.610 回答
3

这值得么?

完全取决于你。我想说这取决于您对这个 CMS 的目标是什么(产生收入,只是为了好玩等)能够向某人展示并说“我从无到有!”真是太好了!

唯一的启动成本是您的域名和每月的网络托管(除非您雇用人员)。godaddy 域每年 1.18 美元,hostmonster 托管每年 8 美元。

安全是一个大问题,是的,但也许这不应该是做你想做或不做的决​​定点。有很多关于 stackoverflow 的文档和其他关于可以帮助您的主题的文档。

我最近从头开始创建了一个 CMS,除了基本的 HTML 之外没有任何先验知识。它在很多方面都是有益的,你甚至可能会发现自己走上了编程职业道路。

于 2012-04-07T08:52:38.490 回答
3

我认为最好学习如何保护您的系统。考虑到您能够从头开始编写系统代码,保护 php 系统实际上并不是什么大问题。

请记住,为了防止 sql 注入:总是逃避输入到数据库的用户输入,mysql_real_escape_string()通常可以完成这项工作。并htmlentities()在 html 页面中显示内容之前使用。

阅读有关保护您的 PHP 的内容,您将省去花钱请人来做这件事的麻烦,而且它还会对其他项目有所帮助。

于 2012-04-07T08:54:48.223 回答
2

不相信任何人——尤其是匿名的人!因此,向您的市长资产注入一些安全数据。似乎相当明智的策略

为什么要制作自己的 CMS?Drupua,wordexpress。乔马拉可能会做一些调整?!

于 2012-04-07T09:13:02.163 回答
2

是的,从头开始制作 CMS 是值得的。因为您拥有/仅拥有您只需要的功能。这使得脚本不那么广泛,并且像 Armani 套装一样适合您的需求。让我们以 Wordpress 为例,当您的网站变得非常大时,您需要对其进行非常大的调整。它有很多功能,其中一些您可能不需要。如果使用已经可用的,专业人士是社区为您找到脚本的错误/漏洞,您需要做的只是更新脚本。

至于安全部分,您​​可以尝试自己寻找漏洞或聘请价格可能有所不同的人。但是您可能不想将您的脚本委托给其他人,除非他们值得信赖。

于 2012-04-07T08:46:38.700 回答