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