繁体   English   中英

本地主机上的 CodeIgniter:重定向太多

[英]CodeIgniter on localhost : Too many redirects

出于测试目的,我将所有代码和数据库记录从我们的实时服务器复制到本地服务器。

我编辑了以下文件:

/application/config/config.php(我也编辑了数据库记录)

//$config['base_url']   = 'https://www.OurWebsite.eu/';
$config['base_url'] = 'http://localhost/test/';

index.php

//define('ENVIRONMENT', 'production');
define('ENVIRONMENT', 'development');

/应用程序/配置/数据库.php

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'test_localhost';
$db['default']['password'] = '**************';

但是当我打开 web 浏览器时,我必须出现以下错误:

Firefox: The page is not well redirected

Chrome: ERR_TOO_MANY_REDIRECTS

我已经尝试在/application/config/config.php 中更改它

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

与所有其他价值观一起,但没有一个奏效。

我也尝试删除我的.htaccess但没有成功。

.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine on

    RewriteBase /

    RewriteCond $1 !^(themes)

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteCond $1 !^(index\.php|assets|static|img|css|js|map|favicon\.ico)
    RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]
    RewriteRule ^sitemap\.xml$ ./index.php?/$1 [L,QSA]
    RewriteRule ^robots\.txt$ ./index.php?/$1 [L,QSA]

</IfModule>

<IfModule mod_deflate.c>
    <filesMatch "\.(js|css|png)$">
        SetOutputFilter DEFLATE
    </filesMatch>
</IfModule>

AddOutputFilterByType DEFLATE text/ico text/html text/plain text/xml text/css application/javascript application/x-javascript application/x-httpd-php application/rss+xml application/atom_xml text/javascript

实时服务器运行没有错误,代码完全相同。 我真的不知道如何继续......我以前从未使用过 CodeIgniter,我可能需要启用特定的 PHP 扩展名?

如果您已在构造函数中使用重定向而不是删除它,则我有相同的问题,但最后得出的结论是,我已在构造函数中使用重定向进行登录会话

当我检查项目会话数组变量时,我遇到了相同的问题,该变量用于检查有效用户该变量在此会话数组中不存在,这就是为什么导致该问题的原因(太多重定向)。 检查它是您的会话数组或其他变量。 也许对您有帮助。

最后,我不得不在我的.htacces文件中写这个

RewriteEngine on
RewriteCond $1 !^(index\.php|public|\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1

/application/config/config.php中

$config['base_url'] = 'http://www.my-site.local/'; //Don't forget the final '/'

并在数据库中: http://www.my-site.local (不带结尾的/

在我的例子中,我在 url 中的一个文件夹名称中有一个空格:http://localhost/some%20folder/admin/

重命名文件夹以删除空间解决了这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM