0

所以我有以下代码:

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 方法设置变量,但我不确定它是如何工作的。

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

谢谢!

4

2 回答 2

0

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

www.mysite.com/page.html > 404!> index.php > 为 page.html 加载数据

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

相当容易设置和构建。

于 2009-06-24T05:38:33.253 回答
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 的信息

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

于 2009-06-24T06:16:36.957 回答