在codeigniter中重写URL

时间:2012-01-31 21:13:46

标签: php codeigniter codeigniter-routing

如何完全避免使用Codeigniter方法处理URL并使用传统方式?

而不是[root_url]/index.php/controller/view/data,我怎样才能获得[root_url]/view.php?variable=value&variable=value etc ...

如果重要,我正在本地运行并测试网站,而不是在网上。

1 个答案:

答案 0 :(得分:2)

如果您不打算使用CI进行URL处理,我建议您使用不同的框架。

我建议将整个应用程序保留在CodeIgniter范围内。 [base_url]/view/?param=value工作正常,您可以通过$this->input->get('param');

访问GET请求

另一个选项是启用enable_query_strings,它可以控制控制器/功能的路由方式。请参阅http://codeigniter.com/user_guide/general/urls.html

上有关URLS的文档中的enable_query_strings

或者,如果您不想在CI应用中使用view.php,则应加载[base_url]/view.php?param=value&etc=,但它将存在于CodeIgniter范围之外。

如果没有加载,请创建如果您有.htaccess文件并重定向流量,请确保启用了REQUEST_FILENAME的!-f和!-d标志,以便不重定向view.php: / p>

$RewriteCond %{REQUEST_FILENAME} !-f
$RewriteCond %{REQUEST_FILENAME} !-d
$RewriteRule ^(.*)$ index.php/$1 [NC,L,QSA]