Настройка Codeigniter с помощью Tank Auth

Что-то в моей конфигурации CI отсутствует «/», которого ожидают файлы просмотра авторизации Tank, и я не могу понять это. Я надеюсь, что вы можете!

Вот некоторые подробности: $config['base_url'] = 'http://localhost/CI/';

У меня не настроен .htaccess (поэтому у меня все еще есть index.php в моем URI)

Когда авторизация Tank загружает один из своих файлов просмотра, вот первая строка: <?php echo form_open($this->uri->uri_string()); ?>

Результирующий URI не загружается, поскольку он читается как «http://localhost/CI/index.php?auth/register вместо http://localhost/CI/index.php/auth/register».

Но если я изменю его на: <?php echo form_open("/".$this->uri->uri_string()); ?>, все будет хорошо. Но вот как это должно было работать! Что я пропустил?

Спасибо!


person user1072910    schedule 04.02.2012    source источник
comment
Так что же возвращает измененная версия? Возвращает ли он правильный uri для действия? Почему вы не можете просто использовать /auth/register вместо этого?   -  person Ben    schedule 04.02.2012
comment
как только я изменяю файл авторизации танка, он работает нормально. Похоже, у всех остальных библиотека работает без модификаций, поэтому я заподозрил собственные настройки.   -  person user1072910    schedule 04.02.2012
comment
ах, может быть, проверить, есть ли у вас строки запроса в вашем основном файле конфигурации? Я помню, что была аналогичная настройка... Кроме того, я помню, что мне пришлось немного изменить тихую аутентификацию танка, чтобы она работала гладко для меня (хотя я использовал .htaccess), если это не касается безопасности (и изменение этого не будет) библиотеки, я не вижу причин, почему бы и нет, даже если это кажется странным.   -  person Ben    schedule 04.02.2012
comment
О, хорошо, я еще раз взгляну на файл конфигурации. Спасибо!   -  person user1072910    schedule 04.02.2012


Ответы (1)


Почему бы просто не удалить index.php с помощью .htaccess? Это решило бы проблему и дало бы вам более чистые URL-адреса.

Это не та переделка, которую я использовал для установки Tank Auth на моем локальном хосте.

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]

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

ErrorDocument 404 /index.php
person Prefontaine    schedule 04.02.2012
comment
Я попробую это. Большое спасибо! - person user1072910; 04.02.2012
comment
Спасибо @Prefontaine. Этот ответ очень помог мне с моей длинной странной проблемой при переписывании URL-адресов. - person Digital site; 23.02.2012