Apache codeigniter中的重定向循环

Apache codeigniter中的重定向循环,apache,.htaccess,codeigniter,Apache,.htaccess,Codeigniter,我的电脑上有一个网站 在今天的工作中,我不得不更改一个文件的权限以使其成为可写的(尽管我不认为这会导致任何问题),从那时起,该站点就进入了重定向循环。该网站是在php中使用codeigniter框架构建的 我的目录结构是: /var/www/html/myprojectRoot 我的服务器的默认DocumentRoot是/var/www/html/ 在html中,我有.htaccess文件,如下所示: RewriteEngine On RewriteRule ^$ /myprojectRoot

我的电脑上有一个网站

在今天的工作中,我不得不更改一个文件的权限以使其成为可写的(尽管我不认为这会导致任何问题),从那时起,该站点就进入了重定向循环。该网站是在php中使用codeigniter框架构建的

我的目录结构是:

/var/www/html/myprojectRoot
我的服务器的默认DocumentRoot是
/var/www/html/

在html中,我有.htaccess文件,如下所示:

RewriteEngine On
RewriteRule ^$ /myprojectRoot/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|javascript|images|robots\.txt)
RewriteRule ^(.*)$ /myprojectRoot/index.php/$1 [L]
我的baseurl设置为

我可以在firebug控制台中看到sute正在被重定向到 及


有人能解释一下这个问题吗。

保持你的
/myprojectRoot/.htaccess
如下:

RewriteEngine on    
RewriteBase /myprojectRoot/

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

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((?!myprojectRoot/).*)$ /myprojectRoot/$1 [L,NC]
然后在
/myprojectRoot/application/config/config.php
中,您需要具备以下配置设置:

$config['base_url']     = '';
$config['index_page']   = '';
$config['uri_protocol'] = 'AUTO';

您的root.htaccess应该如下所示:

RewriteEngine on    
RewriteBase /myprojectRoot/

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

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((?!myprojectRoot/).*)$ /myprojectRoot/$1 [L,NC]

我认为这不是您可能更改代码的问题。 您应该检查执行重定向功能的代码。 在那里,它重定向,可能有一个检查去,否则它会从它重定向的地方收回

And it become a redirect loop. From one method to another.

如果你花更多的时间打字并提供相关的细节,这将对你有很大的帮助。那评论没有告诉我任何事情。您在浏览器中输入了什么URL?你的.htaccess在哪里?您是否从其他浏览器进行了测试?我输入了url
https://mydomainname.com
但我仍然遇到重定向循环错误。My.htaccess位于
/var/www/html/.htaccess
中,如上图所示。正如您所说,我刚刚在
/var/www/html/myprojectRoot/.htaccess
中添加了一个新的.htaccess。仍然收到重定向循环错误。我还提供了更新的root.htaccess。用这个替换你的。测试新浏览器或清除浏览器缓存。