使用apache和php或其他方法进行引导

时间:2009-06-24 05:24:16

标签: php apache bootstrapping

所以我有以下代码:

ini_set("include_path" , ini_get("include_path") . ":/Library/WebServer/Documents/__CMS/:");
ini_set('display_errors', 'ON');

$base_url = '127.0.0.1';
$lib_dir = '/Library/WebServer/Documents/__CMS/';

header('Location: admin/main.php?base_url='.$base_url.'&lib_dir='.$lib_dir);

这很丑陋但很简单,我试图找到一种方法来处理多个位置的多个文件我对引导有点熟悉,但不完全了解“最佳实践”。

我的最终目标是解析一个ini文件并将变量,位置等分发给其他文件的文件......所有文件在加载之前都需要通过这个文件传递。我正在研究通过.htaccess方法设置变量,但我不确定它是如何工作的。

任何帮助都会很棒! (我在这里寻找一些理论和最佳实践;)

谢谢!

2 个答案:

答案 0 :(得分:0)

我以前做过这个的最好方法是使用Apache的404处理程序和重写。 基本上,您告诉apache(在.htaccess中)将所有404发送到index.php(或您的引导程序),并在该文件中,您可以根据键入的内容确定需要去的位置并相应地加载内容。< / p>

www.mysite.com/page.html> 404! &GT; index.php&gt;加载page.html的数据

如果page.html的数据不存在,那么您只需抛出自定义404。

相当容易设置和构建。

答案 1 :(得分:0)

您可以使用mod_rewrite将所有请求链接到index.php

RewriteEngine on
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
  1. http://example.org/test/foo在内部被重写为http://example.org/index.php
  2. 在$ _SERVER数组中,您仍会找到/ test / foo
  3. 的信息

    看看一些流行的框架。例如Zend Framework