我坚持:
答案 0 :(得分:0)
嗯,就我而言,我不希望我的应用过分依赖.htaccess规则。我使用了一个简单的规则集,就像你在选项1中得到的一样,然后我让大部分路由都由框架处理。我每天都会使用Klein并喜欢它。它强大而可靠,但代码库相对较小,所以如果我真的需要,我可以深入了解发生了什么。我知道有些人使用和推荐Slim,尽管我自己并没有使用它。在PHP中编写自己的路由代码非常简单,但是你会遇到许多边缘情况。
如果你非常依赖.htaccess,你可能会遇到一些问题。首先.htaccess是递归解析的,因此Apache必须检查树中每个子目录的.htaccess文件。链中的一些.htaccess规则实际上可以覆盖你的逻辑,并产生意想不到的副作用。我不认为Nginx或其他一些网络服务器甚至支持.htaccess,所以你将自己锁定在Apache中。一些托管服务提供商完全或部分阻止使用.htaccess。就个人而言,我认为路由逻辑将更容易理解,因此未来的开发人员可以维护它,如果它是用应用程序的语言编写的,而不是.htaccess规则。
最后,我会提醒我不要放弃MVC模式。如果您的域逻辑(模型)渗透到应用程序的其余部分,那么您或继承您的代码的可怜的傻瓜将会受到伤害。如果它是一个足够小的应用程序,结合Controller和View可能不会是灾难性的,但大多数应用程序都会增长。即使您不遵循严格的MVC,也要遵循一些内部一致的模式,并将您的疑虑分开。无论如何,我的投票将是针对具有最小.htaccess规则的微框架,以便于维护,易于开发,可移植性,甚至可能性能(.htaccess如果过度使用会导致性能问题,因为我提到的递归问题)。