用于交钥匙Web应用程序的Django或CodeIgniter

时间:2009-03-27 18:05:23

标签: php python django codeigniter

我将为垂直市场构建一个交钥匙解决方案,并希望提供两种选择:软件即服务,并让他们有机会独立托管应用程序。换句话说,我的目标是拥有与Joel的FogBugz类似的部署选项。

我是一名Python程序员,我可以使用Django飞越该项目。我喜欢PHP有几个原因:

1)Django安装和配置假设您可以访问shell(我的目标不是程序员类型)。虽然我可以提供安装服务,但不能在他们的服务器上提供。

2)Django仅在某些特定主机上运行,​​必须特别注意启用它。安装mod_python / mod_wsgi,很可能是我的潜在客户中的少数几个会有root访问权限,甚至是cpanel。

3)使用PHP意味着我可以在他们现有的服务器上运行它。在DNS更新时,我没有必要将它们移动到支持Django的服务器,也不需要停止发送电子邮件。

另一方面,我对PHP的经验很少。 Smarty作为模板语言看起来不错,并且与Django模板类似。它不提供模板继承,除非我非常讨厌的方式,我不希望使用它,因为它可能会破坏应用程序,如果设计师搞砸了它们。你怎么看?提前谢谢!

3 个答案:

答案 0 :(得分:4)

对于所有基于非PHP的Web应用程序来说,部署显然是一个问题,但我认为开箱即用的提供Ruby / Python等的DreamHost / Engineyard类型的ISP正在变得越来越好。看起来本周PyCon将会讨论如何解决部署问题。 Django,Turbogears和Pylons越来越受欢迎,这推动了对更好部署解决方案的需求。

那就是说,如果你的目标市场是非常低端的人,每年12美元的ISP类型,那么我认为你除了PHP之外别无选择。

最后,我不同意你的一件事是在同一台服务器上运行PHP和Django。我在我的服务器上运行了几个PHP应用程序,使用Apache和数十个Django站点,并且在守护进程模式下使用mod_wsgi。以这种方式运行意味着Python解释器不会在Apache工作者中使用ram,反之亦然,PHP解释器不会污染我的mod_wsgi守护进程:)

答案 1 :(得分:3)

如果您希望您的应用程序成为主流,那么您几乎不得不使用PHP。从Django到PHP比从PHP到Django更容易。您了解标准,您只需要学习PHP语法和函数。

我肯定会使用PHP框架。 Symfony和akelos非常类似于Rails(靠近Django)。除了代码点火器以外它做了它应该做的事情 - 组织你的代码。

答案 2 :(得分:2)

根据您自己的结论,我会选择CodeIgniter。似乎有大量工作可以帮助您的客户安装您的网络应用程序,我认为您不希望这样做。

构建一个易于安装的简单Web应用程序,以便您可以集中精力改进并销售它,而不是像系统管理员那样额外工作或编写大量的安装教程。

(有了这个说法,FogBugz在我们的Linux服务器上安装并不容易,即使它是用PHP编写的。我和我的同事(两个程序员)花了整整一个工作日来安装。所以我我认为安装自托管网络应用程序总会出现问题。)