codeigniter выпуска проблемы перенаправления страницы: ошибка 404 - PullRequest
0 голосов
/ 17 июня 2019

Я создаю приложение, используя CodeIgniter.

Когда я ввожу правильные адрес электронной почты и пароль, я должен быть перенаправлен на панель управления, но я получаю это перенаправление: / auth / login, и оно показывает enter image description here

Могу уточнить, что я разрешил mod_rewrite, добавил запись base_url и разрешил соединение на apache

My Config.php

   $config['base_url'] = 'http://127.0.0.1:8000/stock-v2/'; 

Мой контроллер:

 public function login()
{

    $this->logged_in();

    $this->form_validation->set_rules('email', 'Email', 'required');
    $this->form_validation->set_rules('password', 'Password', 'required');

    if ($this->form_validation->run() == TRUE) {
        // true case
        $email_exists = $this->model_auth->check_email($this->input->post('email'));

        if($email_exists == TRUE) {
            $login = $this->model_auth->login($this->input->post('email'), $this->input->post('password'));

            if($login) {

                $logged_in_sess = array(
                    'id' => $login['id'],
                    'username'  => $login['username'],
                    'email'     => $login['email'],
                    'logged_in' => TRUE
                );

                $this->session->set_userdata($logged_in_sess);
                redirect('dashboard', 'refresh');
            }
            else {
                $this->data['errors'] = 'Incorrect username/password combination';
                $this->load->view('login', $this->data);
            }
        }
        else {
            $this->data['errors'] = 'Email does not exists';

            $this->load->view('login', $this->data);
        }   
    }
    else {
        // false case
        $this->load->view('login');
    }   
}

    */
public function logout()
{
    $this->session->sess_destroy();
    redirect('auth/login', 'refresh');
}

Может кто-нибудь помочь?

Ответы [ 2 ]

1 голос
/ 17 июня 2019

Измените ваш файл .htaccess.Вставьте его в .htaccess в каталог вашего приложения (на том же уровне, что и приложения), и он будет работать:

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 

И в conf.php:

$config['base_url'] = 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER['SERVER_PORT'].'/stock-v2/';
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';

Затем используйте regirect, как это безrefresh:

redirect(base_url('dashboard'));

Проверьте в http.conf, разрешаете ли вы переопределение для своего домена?

<Directory "/var/www">
    AllowOverride All
    # Allow open access:
    Require all granted
</Directory>
0 голосов
/ 17 июня 2019

Вы должны настроить свой базовый URL.

Если вы работаете на локальном сервере, попробуйте следующее:

$config['base_url'] = 'http://localhost/stock-v2/';

В противном случае (в режиме реального времени)

$config['base_url'] = 'http://<put your domain here>';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...