使用.php和.php在codeigniter中使URL后缀可选

时间:2015-06-08 06:50:42

标签: codeigniter codeigniter-2

我的项目已基本完成,因此我无法在整个项目中对网址进行更改。每当我使用重定向时

redirect('welcome?loggedout=true', 'refresh');

页面重定向到

welcome?loggedout=true.php

我添加了网址后缀

$config['url_suffix'] = '.php';

但是我可以将它作为可选项使用,并且在我想要使用.php自定义链接之前,网址仍然是正常的扩展名。

2 个答案:

答案 0 :(得分:0)

要使用查询字符串网址,请修改config.php中的application/config。将 enable_query_strings 设置为TRUE并定义控制器和功能触发器。

$config['enable_query_strings'] = TRUE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';

<强>输出

enter image description here

Go through this source

答案 1 :(得分:0)

仅是补充和更新,您可以仅对某些URL使用后缀,而对并非所有项目都使用后缀-使用来自codeigniter的路由。 OP在他的评论中提到了这一点,但没有提供示例。

这是一个例子: http://antsplace.co.uk/url-suffix-in-codeigniter/

我没有做同样的事情。就我而言,我只需要.xml页面的后缀 所以我只放在route.php上:

$route['newsfeeds/(:any)\.xml'] = 'newsfeeds/index/$1';

并创建了一个Newsfeeds控制器和索引函数来处理。而已。这样,只有在段1上带有/ newsfeeds的URL才会始终应用/接受.xml后缀

索引控制器功能可能还有很多:

public function index()
    {
        $this->load->helper('xml');
        $this->load->view('xml_view');
    }

别忘了在网站标题中调用header("Content-Type: application/rss+xml; charset=utf-8");来正确地将xml呈现到该视图,或者您可以使用codeigniter内置函数来完成此操作,如下所述: https://stackoverflow.com/a/10361155/2387741

最后,这个xml帮助器(文档here)可帮助您翻译一些需要在xml上正确设置格式的字符才能正常工作。

我想是这样。最好的问候。