如何使用代码点火器路由或htaccess文件重写URL


How to rewrite URL using Codeigniter route or htaccess file?

我创建了一个带有 Page 方法的主页控制器,以便它可以加载内部页面视图。所以我只是将 Page 名称作为参数传递给 Page 方法,然后它加载该特定视图。

E.g. 
http://www.mywebsite.com/home/page/copyright

所以在这里1.是控制器2. 页面即方法3. 版权是传递给 page() 方法的参数

因此,只需使用此URL即可加载家庭年龄

http://www.mywebsite.com/home/

和内页使用此 URL 模式加载

http://www.mywebsite.com/home/page/copyright

现在我想加载内页,以便假设我使用此 URL

http://www.mywebsite.com/copyright

它应该从

http://www.mywebsite.com/home/page/copyright

如何使用代码点火器路由方法或使用 .htaccess 文件来执行此操作?

提前谢谢。

在您的应用程序/配置/路由上.php :

$route['copyright'] = 'home/page/copyright';

甚至更好:

$route['(:any)'] = 'home/page/$1';

因此,如果您导航到 http://www.domain.com/copyright 它会路由到主页/页面/版权
如果您导航到 http://www.domains.com/anything 它会路由到主页/页面/任何内容

编辑以捕获任何路线

尽管在这种情况下,您必须"捕获"不路由的页面,例如:

function page($section = ''){
 switch($section){
  case 'contact':  
   //display contact form
  break;
  case 'copyright':
  //display copyright
  break;
  default:
  //404 error
  break;
 }
}