2009-12-24 100 views
2

这是一个通用的编程问题。光博客系统无数据库

什么是使光照博客系统,可以处理图像,bbcode-ish样式和文本没有数据库后端的最佳途径?在极端情况下,光线不超过50至100个。 应该使用什么语言?这些信息是否有任何首选的数据格式?安全性如何发挥出来?

编辑:客户端没有数据库,是一个共享的服务器上。无法改变这一点。所以没有DB。

EDIT2:

有人提到SQL精简 - 确实需要什么比将文件复制到服务器的更多?这里的关键是再次事情不应该需要比FTP访问更多的权限。

+2

是否有避免数据库的特殊原因?数据库将是最高效和可扩展的解决方案。 – Ariel 2009-12-24 00:43:06

+0

你仍然可以为你的某些文件DB如http://ffdb-php.sourceforge.net/或Apache的couchDB – dusoft 2009-12-25 18:31:36

回答

8

如果你想自己做;将每个帖子作为文件存储在目录中。然后排序并限制部分依赖文件名的帖子,以便对它们进行排序和限制,并且可能(在进行搜索的情况下)读取每个最后一个文件。尽管如此,不要让用户发布10,000个帖子。但是,上面是一个平面文件数据格式。您可以通过在每个帖子文件中使用标准格式(如JSON,Yaml或XML)来获得幻想,甚至可以通过在主要客户端代码中使用Ajax调用来请求这些标准格式。

现在如果你想使用平面文件的原因是你只是不想安装数据库服务器,没有任何东西阻止你读取本地(到服务器)文件作为berkley DB,Lucene索引或SQLite数据库从您的Web应用程序使用适当的客户端库。你会发现上述任何一种方法比上述方法更加理智(在代码中更快一点,可读性更强),并具有在服务器上安装的所有相同要求(读写文件权限)。许多Web框架或语言(如php)都可以为这些客户端库提供API选项; SQLite和Lucy(C Lucene)。

如果你只是在寻找它正在完成的例子,我首先(我认为1999年或2000年)遇到blosxom这是一个perl脚本,可以作为每个请求的cgi脚本运行或作为cron作业。它根据你想要扫描的目录中的任何内容建立一个“posts”的日期索引。它也构建一个RSS提要。

+0

+1,特别是将嵌入式数据库建议为较低规模的解决方案 – Rob 2009-12-25 02:14:17

+0

+1,我认为值得补充的是,许多现成的博客引擎可以支持嵌入式数据库。重塑这个轮子根本没有意义。 – Aaronaught 2009-12-25 19:16:38

+0

SQLite的+1,听起来像是一个完美的答案。 – 2009-12-25 20:41:53

0

搜索在谷歌平面文件CMS-ES,例如: http://www.flatcms.org/

这个已经做了,所以没有必要再建立这样CMS。有很多。

+0

这个链接导致一个日本网站,似乎与内容管理无关... – expiredninja 2012-02-20 09:29:19

0

我同意dusoft,这已经完成。

DotNetBlogEngine.net是有一个很好的XML后端作为一个选项基于ASP.NET(C#)博客系统。

1

我要去这里走出去的肢体,并说,它并不总是目的地,但旅途。

如果你要着手做这个,我建议使用您舒适的语言。就我个人而言,这将是C#/ .net,但是从您的标记中,我会假设PHP将是您将选择的Serverside脚本语言。

我会布置如何我想我的应用程序的行为。如果要有大量的数据,你应该考虑(正如dlamblin所提到的)用于查找和检索的某种数据库。 (Light Blog,没有太多的数据...... 1000个用户可以编辑?也许你应该考虑一个数据库。)一旦你决定如何存储数据,决定如何呈现它。

为您想要实现的每个功能(博客模板,bbcode,用户认证,文本搜索...)写一些概念代码的证明,并开始将它们一起使用。

+0

谢谢,实际上这是我的客户。最多1-3名编辑,并且不常出现半频繁的职位。 1000个用户是*重大*多报。是的,PHP是这里选择的语言。 – Moshe 2009-12-26 23:38:49

0

不直接回答你的问题,但检查Unify

0

如果你不想写一个新的或希望得到一些启示:

+0

DB免费wordpress - 听起来令人印象深刻。我已经受到启发了。 – Moshe 2009-12-25 04:54:05

0

你既可以使用XML,也可以使用SQL compact(它允许像SQL Server一样处理事情,而不是使用平面文件的数据库)。