从带有路由的codeigniter中的url中删除控制器名称


remove controller name from url in codeigniter with routes

我知道这个问题已经被问过很多次了,但我根本无法做到。我试图从URL中删除index.php和控制器名称(我只有一个控制器)。

到目前为止,我能够删除index.php,但我仍然无法删除控制器名称

这是我的htaccess文件:

RewriteEngine on
RewriteCond $1 !^(index'.php|images|static|robots'.txt)
RewriteRule ^(.*)$ /index.php?/$1 [L]

这是我的配置文件的顶部:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$config['base_url'] = '/main/';
$config['index_page'] = '';

我把这作为我的路线文件中的最后一行:

$routes['([a-z'_]+)$'] = "main/$1";  

我正在使用BlueHost,该网站是该帐户的一个插件域。不确定这是否有什么不同。但到目前为止,我可以删除index.php,但我也想删除"main"。

任何帮助都会很棒!谢谢,

我还不能尝试一下,看看它是否有效,但如果你保留.htaccess,并在路由文件中使用它呢?

$routes['(:any)'] = "main/$1";

我在这里看到的可以更改的内容之一是:

$config['base_url']='http://your-site.com/';

在你的routes.php

$route['default_controller']='main';