根目录上没有.htaccess,但无限重定向

时间:2016-11-08 23:35:47

标签: php apache .htaccess codeigniter redirect

我的网站只有几个.html文件。 index.html是主页面。然后我使用CodeIgniter 3扩展了这个网站。 旧网站正在http://example.com/上工作,新网站正在http://example.com/ci上 一切都很好,直到我试图做一个魔术。我决定将新版本保留在ci目录中并使用.htaccess添加了重定向规则:

#.htaccess file on the root (/) directory
Redirect / /ci

它进入了一个无限循环,页面没有打开。然后我删除了该行,但仍然尝试重定向到/ciciciciciciciciciccici...

我删除了根目录上的.htaccess。

位于/ci目录中的另一个.htaccess包含以下行:

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

如果我输入example.com/example.com/ci,无限重定向都会在两个环节中发生。

有什么我忘记改变的吗?这可能是因为服务器的后期反应?

修改

仅仅为了测试,我更改了/ ci /目录中的.htaccess中的行,

RewriteEngine on
#RewriteBase /ci
RewriteBase /hh # which does not exist
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

它仍然会尝试重定向到/ci

编辑2

如果我输入完整的网址,则会打开该网页。例如:

example.com/ci/contact ---> opens
example.com/index.html ---> opens

example.com/           ---> error
example.com/ci         ---> error

example.com/ci/        ---> OPENS! Strange!

1 个答案:

答案 0 :(得分:2)

一切都与缓存有关,但在服务器端。它现在正在运作。