【发布时间】:2010-01-30 16:58:46
【问题描述】:
我曾使用过 XAMPP、WAMPP、MAMPP 等,现在开始研究 Django。
我们所做的大部分工作都是以 CMS 为导向的;尽管我们被告知不要使用第三方 CMS(主要是因为用户发现它们很难使用,以及其他问题),但我发现我可以使用 Cake、CodeIgniter 或其中一个编写一个非常简单的 CMS其他 PHP 框架。
然而,我越来越感到沮丧,因为我需要做大量的编码才能启动和运行某些东西,而且有人告诉我 Django 是一个很好的 Python 框架。它似乎也从 reddit 获得了很多关注。
我对从 XAMPP 迁移到 Django 有一些顾虑和疑问。
1) 安全性
任何网络应用程序都应该进行防御性编码。在过去的几年中,我们看到了针对 XSS、SQL 注入、跨站点伪造、会话固定、会话劫持、cookie 劫持的趋势;一个人需要的安全量可能是压倒性的。
Django 做了什么来防止/限制 XSS、SQL 注入、Javascript 注入和消毒输入;一个通常与保护 PHP Web 应用程序相关联?是我需要担心的事情,还是 Django 开箱即用地完成了所有这些事情。
2) /www/ 公用文件夹中有什么内容?
在我阅读的手册中说不要将 manage.py 或其他 .py 内容放在主 webroot 中,所以这意味着我将所有内容都放在 webroot 之外;那里面有什么?
我是否将 /templates/ 目录放在 webroot 中?服务器如何知道要运行什么?
3) 我还能在 Django 项目中使用 .htaccess 吗?我熟悉 Apache,经常用它来做路由,或者阻止坏机器人,但是使用 .htaccess 还能用吗?
4) 定时任务
cronjobs 是否仍然适用于 Python/Django 项目?
5) 运行第三方 perl/其他脚本
在 PHP 中,您可以使用其他库,例如 curl 库、ffmpeg、ImageMagik 以及许多其他库;我还能在 Python/Django 中使用这些库吗?
6) 管理屏幕
Django 为您提供了一个开箱即用的管理屏幕;这仅用于开发目的还是可以上线?我担心管理屏幕的任何安全性。
7) 与讨论、Facebook、Twitter、OpenID、验证码等集成。
PHP 中有一些库可以帮助集成 DisQuss、Facebook、Twitter;但是与这些和其他第三方应用程序集成是否相对容易?
8) 电子商务、SSL
有很多电子商务网站使用 Django 吗?我见过很多 CMS/博客类型的软件,但电子商务网站并不多。我的意思是购物卡、Protx/Paypal 或 Worldpay 集成。
那是另一回事;有适用于 PHP 的 Protx、Paypal、Worldpay 等沙箱——但有适用于 Django 的沙箱吗?
9) 值得吗?
是否值得从 XAMPP 背景迁移到 Django?它真的会让事情变得更快,还是只是营销炒作?
谢谢。
【问题讨论】:
标签: django