如何在末尾摆脱/索引

时间:2016-02-02 07:21:20

标签: php codeigniter codeigniter-restserver

我正在使用PHP codeigniter和chriskacerguis / codeigniter-restserver。

在日志文件中我看到了404.因为有些 / index 会在最后添加。 正确的网址是 api / CurrentYear

DEBUG - 2016-02-02 02:14:48 --> UTF-8 Support Enabled
DEBUG - 2016-02-02 02:14:48 --> Global POST, GET and COOKIE data sanitized
ERROR - 2016-02-02 02:14:48 --> 404 Page Not Found: api/CurrentYear/index

任何人都可以告诉我为什么/ index会在最后添加或任何解决方案。

我的.htaccess看起来像这样。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC]
    RewriteRule (.+) index.php?p=$1 [QSA,L]
</IfModule>

3 个答案:

答案 0 :(得分:2)

如果您想从网址中删除index.php,那么按照代码肯定会适合您。

<IfModule mod_rewrite.c>
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
<IfModule mod_rewrite.c>

答案 1 :(得分:0)

请删除codeIgniter Framework配置文件中的index.php

$config['index_page'] = '';

并在htaccess编码下面应用

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|css|images|robots\.txt)
RewriteRule .* index.php/$0 [PT,L]

答案 2 :(得分:0)

此代码适用于我

    Options +FollowSymLinks
    RewriteEngine on
    RewriteCond $1 !\.(gif|jpg|shtml|ico|swf|wav|mp3|less|cur)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule (.*) index.php?p=$1 [QSA]