2011-03-22 53 views
0

我有一个巨大的htaccess的网站,但我试图找到一个很好的方式来有一个类似WordPress的index.php文件:一切都重定向到它,它启动系统,加载包含文件,加载配置文件,最后加载HTML环境。索引文件加载器,类似WordPress的

我不确定复杂的网站是否使用这个系统,我不确定这是不是一个好的方法来加载一个页面,但我认为这是因为index.php会加载大部分包含文件,并会定义在大多数页面上使用的常量,所以我不必在每个页面中包含和定义。

所以,我在这里问,如果你们中的任何人都知道这样做的好方法。 如果一切都针对index.php,那么它会像.htaccess一样行事,我能想到的唯一方法就是加载正确页面的内容是通过检查$_SERVER['REQUEST_URI']变量并根据它,加载一个页面(它的' d有很多“如果”)。

或者我可以用巨大.htaccess和作出这样的要求“www.site.com/post/”去“index.php?page=post”和加载页面根据$_GET['post']

由于答案可能很长,我为这个系统思考一个网站,这个解释或类似的东西,或名称(如果有的话),所以如果你知道如何正确地请使用此系统,请让我知道如何找到关于它的更多信息。

回答

1

Model View Controller 类型框架的教程,主要描述你想要做什么。 Here是一个不错的简单例子。看看它,看看它对你有用。

0

我看到了类似的东西在那里他们将使用Apache重写引擎重定向URL来index.php?page=$page他们会拉的名字了$_REQUEST变量,检查file_exists()功能,该文件名,并分配到$页。

他们遇到了一个安全问题,即使file_exists()函数返回true,攻击者仍然可以从服务器注入某些东西,如密码文件。他们最终还通过字符串函数检查该文件是否被命名为“.php”。

创建一个已知的页面名称列表并检查,我不会建议使用这种方式,除非你可以确保从代码注入攻击锁定它。

如果继续:请包括一个包含您的配置和常量的核心文件,然后在包含$ page之前设置其他所有内容。

+0

这很有趣。我现在正在另一个网站上工作,这次我使用了file_exists(),但是你提到了安全问题。我应该得到有关MVC的信息并使用它。 – Parziphal 2011-06-01 03:49:23