我正要写一份投标书。解决方案可能是基于 PHP 的 CMS。稍后我可能想要集成一个 ASP.NET 框架并使其看起来像一个站点。
- 哪些功能会使这相对容易。
- OpenId 和类似的东西会有所不同吗?
- 在 PHP 世界中,Joomla 应该比 Druapal 更具集成性。这里有什么重要的区别?
- ASP.NET、Python 或 Ruby 中是否存在比其他框架更易于集成的特定框架?
我认为最重要的是选择合适的服务器。服务器需要有足够的模块。Apache 将是一个不错的选择,因为它支持您想要的一切,包括 mod_aspnet(我没有测试过,但很多人说它可以工作)。
如果您认为 asp.net 集成肯定会到来,我会选择 Windows 作为操作系统,因为它肯定会更容易。
您还可以安装反向代理,它会根据请求决定哪个服务器呈现内容 - 如果用户请求 aspx 页面,代理将连接到 IIS 和 windows 页面,如果它要求 php,它可以连接到其他服务器。这种方法的问题是共享内存和状态,这可以通过精心设计来解决,以支持这一点——比如保存所有状态信息和模型数据的共享数据库......
OpenID 没有任何区别——您选择的任何框架都有库。
最重要的是将尽可能多的外观以一种可以被任何平台共享的格式。这意味着您应该开发一组标准的 CSS 文件和 (X)HTML 文件,这些文件可以在任何这些平台选项中导入(或直接呈现)。可以将其视为编写一个可以由不同程序加载的动态库。
如果您的所有平台选项都支持,使用 OpenID 进行身份验证会很好,但请记住,每个平台都需要为每个用户存储额外的用户元数据(首选项、上次登录、权限/角色等)还是要在他们之间争吵。OpenID 只解决身份验证问题,而不是授权或偏好问题。
最后,由于有很多选择,我会坚持跨平台解决方案。这将为您留下最多的选择。恕我直言,如果您有可能有一天与其他系统集成或迁移到另一个系统,那么使用 ASP.NET 并没有什么令人信服的优势。