如何使用.htaccess缩短codeigniter中的网址?

时间:2012-07-08 12:40:46

标签: php .htaccess codeigniter

我想知道是否有任何方法可以使用.htaccess缩短codeigniter中的网址。比如我有example.com/user/account/settings,我想将网址缩短为example.com/settings。我们以相同的方式从地址栏中删除index.php,有没有办法从同一个地方删除更多的项目?

2 个答案:

答案 0 :(得分:3)

由CodeIgniter应用程序文件夹中的routes.php文件完成。 Documentation

对于您的示例,这将非常简单,只需在文件中添加一行:

$route['settings'] = 'user/account/settings';

答案 1 :(得分:1)

默认情况下,index.php文件将包含在您的网址中:例如

example.com/index.php/news/article/my_article

您可以使用带有一些简单规则的.htaccess文件轻松删除此文件。下面是这样一个文件的示例,使用“否定”方法,除了指定的项目之外,所有内容都被重定向:

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

在上面的示例中,除index.php,images和robots.txt之外的任何HTTP请求都被视为对index.php文件的请求。