【发布时间】:2011-03-05 19:17:10
【问题描述】:
我正在建立一个网站,通过 index.php 运行所有代码。
例如index.php?controller=something&id=01234。
我想使用 PHP 创建友好的 URL,所以我这样做:
$request = str_replace('/root/', '', $_SERVER['REQUEST_URI']);
$params = explode('/', $request);
$controllers = array('first_c', 'second_c', 'third_c');
if (in_array($params[0], $controllers)) {
include($params[0]); // just to give an example
}
然后使用 mod_rewrite 规则 RewriteRule ^.*$ ./index.php 我将所有内容重定向到 index.php。
我对此有一些问题:因为所有内容都发送到 index.php,包括 .css、.js 和图像文件。所以除了 php 生成的 html 之外,没有任何东西可以正常工作。我遇到了很大的麻烦,因为我尝试了 mod_rewrite 一切(而不是 PHP),但我无法让它工作......请参阅:Apaches mod_rewrite VS. PHP routing?
谢谢。
【问题讨论】:
标签: php mod-rewrite url-rewriting url-routing