.htaccess не перенаправляет определенные URL-адреса - PullRequest
0 голосов
/ 22 августа 2011

Так что я недавно начал заниматься .htaccess и переписыванием URL, и до недавнего времени он работал хорошо.По сути, я перенаправляю все URL-адреса в index.php, который затем обрабатывает URL-адрес и отображает правильное содержимое.поэтому, если я введу http://www.example.com/blog/index.html, это работает и отображается правильно.Но если я введу http://example.com/blog/, я получу ошибку 404 ... Ниже я поместил на всякий случай и код .htaccess, и код PHP.

RewriteEngine on

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

RewriteRule ^(.*\.html)$ index.php/$1/ [L]

и PHP:

if(($_SERVER['REQUEST_URI'] == '/') || ($_SERVER['REQUEST_URI'] == '/index.php') || ($_SERVER['REQUEST_URI'] == '/index.html'))
    {
        //Looks like we are accessing the root
        $this->controller = $this->config['default'];
    } else {
        $this->uri = explode('/', str_replace('.html', '', $_SERVER['REQUEST_URI']));
        $this->controller = $this->uri[1];

        if(isset($this->uri[2]))
        {
            $this->action = $this->uri[2];
        }
    }

Любая помощь будет оценена, спасибо!

1 Ответ

2 голосов
/ 22 августа 2011

Ваш .htaccess должен выглядеть так

RewriteEngine on

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

RewriteRule ^(.*)$ index.php/$1/ [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...