如何使用.htaccess将index.php重定向到root

时间:2014-11-08 06:36:24

标签: php apache .htaccess codeigniter mod-rewrite

我在windows8.1上安装了xampp。我在apache conf文件中启用了mod_rewrite,我正在使用.htaccess文件。我已经重新启动了我的网络服务器并按照分步说明启用.htaccess文件和mod重写。

完成所有操作后,我的应用程序位于http://example.com/ci/

现在我遇到的问题是当我去http://example.com/ci/index时,我被重定向到xampp启动画面。当我去http://example.com/ci/我很好。现在我的配置变量设置为$ config ['index_page'] =“”;我有htaccess文件就位。

我可能刚刚盯着这个很久但我不知道发生了什么。我知道这不是一个CI问题,在某个地方问题就在于mod_rewrite,但是我的想法很新鲜。任何帮助将不胜感激。

下面是我的.htaccess

 <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    # Removes index.php from ExpressionEngine URLs
    RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
    RewriteCond %{REQUEST_URI} !/system/.* [NC]
    RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]


    # Directs all EE web requests through the site index file

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ ci/index.php/$1 [L]

 </IfModule>

 <IfModule !mod_rewrite.c>
    ErrorDocument 404 /index.php
 </IfModule> 

1 个答案:

答案 0 :(得分:1)

使您的htaccess文件非常简单,如下所示 希望它能起作用

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /ci/index.php/$0 [PT,L] 
RewriteBase /clientname/

并在config

中定义默认控制器