我们正在Zend Framework中开发一个新站点,同时维护和改进我们的旧版本(普通的、老式的PHP文件)。
在某些情况下,这意味着我们可以在一定程度上使用较新版本的编程时间。
我们确实有完全的服务器控制和在Apache上复杂的301重写,所以我们可以根据需要重写o symlink。我们的目标是能够将Zend包含在我们网站的一个子目录中,这样我们至少可以在任何PHP编程中使用它的库,甚至更好的是,当它完成后,DB模型和尽可能多的代码可以在我们纯粹的ZF网站上重用。
这样的麻烦值得吗?为了做到这一点,有人能指出一个教程或最佳实践吗?
非常感谢。
发布于 2009-09-07 17:49:31
完全可以一次编写一个基于ZF的页面来实现新功能,或者替换站点的旧部分。
您可以根据需要编写新页面,但不是像往常一样通过index.php馈送,而是通过mod_rewrite将特定的URLS定向到新的基于zf的页面:
RewriteEngine on
RewriteBase /
# Not if there is a file or directory that matches
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# a new, clean URL can go to an old page
RewriteRule ^online /online_now.php
# other pages go to a ZF-frontcontroller, in zf.php
RewriteRule ^about/ /zf.php [L]
RewriteRule ^account /zf.php [L]
RewriteRule ^data /zf.php [L]
RewriteRule ^faq /zf.php [L]发布于 2009-09-07 17:50:13
我们有一个高度模块化的站点,因此我们的策略是从使用Zend Framework开发新模块开始。我们已经非常频繁地使用了.htaccess (事实上,太频繁了),所以我们的最后一条规则就是重定向到Zend控制区域。
我们以少量的规律性重新访问旧的模块,当我们需要以重要的方式重新处理它们时,我们将重写它们。
最困难的部分,实际上并不是很难,是确保我们所有的会话信息在不同的部分中保持一致。
实际上,最困难的部分可能是确保界面在某种程度上是一致的。系统的旧部分(其中一些已经有10年历史)中有太多糟糕的代码,以至于我们不得不在这里和那里以小的方式打破Zend框架的惯例,使其对用户透明。
这对我们来说是非常实验性的。我们在Zend Framework上实现了新的系统,因此对它有相当多的机构熟悉度,但无法说服自己对遗留系统进行重写是值得的。我们处于非常早期的阶段,但对此感到非常乐观。
https://stackoverflow.com/questions/1390211
复制相似问题