Codeigniter htaccess无法正常工作

use*_*513 3 php .htaccess codeigniter

我在我的网站上使用此htaccess文件删除index.php。

RewriteEngine on
RewriteCond $1 !^(index\.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 
Run Code Online (Sandbox Code Playgroud)

但是此文件不起作用.Apache模块中启用了重写功能。所使用的codeigniter版本为2.0.1。

Muh*_*vin 5

我已经在没有Codeigniter的情况下对其进行了测试,并且可以正常工作。

我在htdocs下创建一个名为“ demo”的文件夹。我将“ .htaccess”与您的内容以及其他行(RewriteBase)放在一起:

RewriteEngine on
RewriteBase /demo/
# RewriteCond $1 !^(index\.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)

然后下面的“ index.php”:

<?php
echo $_SERVER['PATH_INFO'];
Run Code Online (Sandbox Code Playgroud)

经过测试: http:// localhost / demo / hello

结果:/ hello


检查事项:

  • 如果将“ .htaccess”放在文件夹中,请不要忘记添加RewriteBase。
  • 确保为您的目录启用了FollowSymLinks。有关更多信息,请参见此链接