ФорумПрограммированиеPHP для идиотов → Проблема с роутами в Кохане

Проблема с роутами в Кохане

  • Kikky

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 11 марта 2011 г. 13:15

    Использую Kohana v. 3.1.1.1 , хочу из адресной строки убрать index.php, то есть 'http://localhost/kohana/index.php/welcome/index' в 'http://localhost/kohana/welcome/index'.
    Браузер выдает мне '404'..
    Мой .htaccess, который лежит в корне коханы:
    # Turn on URL rewriting
    RewriteEngine On

    # Installation directory
    RewriteBase /kohana/

    # Protect hidden files from being viewed
    <Files .*>
    Order Deny,Allow
    Deny From All
    </Files>

    # Protect application and system files from being viewed
    RewriteRule ^(?:application|modules|system)\b.* index.php/$0 [L]

    # Allow any files or directories that exist to be displayed directly
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    # Rewrite all other URLs to index.php/URL
    RewriteRule .* index.php/$0 [PT]


    Мой httpd.conf:
    <VirtualHost *:80>
    ServerName kohana
    DocumentRoot /var/www/kohana


    <Directory /var/www/kohana>
    DirectoryIndex index.php
    AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>
    </VirtualHost>

    Также если поможет: OC - Ubuntu 10.04, у apache mod_rewrite 'enabled'.
    Памажиите!!
  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz 11 марта 2011 г. 16:26, спустя 3 часа 10 минут 53 секунды

    Так ведь на форуме Коханы это одно из самого первого, что спрашивают.
    Глянь то ли в index.php то ли в config.php (второе вряд ли, думаю первое), есть нужній тебе параметр. Вот в нем сейчас указывается то ли "index.php" то ли просто "index". Ты его нах убери (оставь переменную пустой) и будешь иметь счастье.
    под рукой нету файлов Коханы, так что точнее сказать не могу.
  • Kikky

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 11 марта 2011 г. 16:43, спустя 16 минут 49 секунд

    Нет такого параметра, главное здесь в .htaccess:
    RewriteBase /kohana/ 

    С помощью этой строки должно быть возможным писать htttp://localhost/kohana вместо htttp://localhost/kohana/index.php.
    Я так понимаю мой .htaccess не читается нормально апачем или игнорируется по какой-то причине..
    ..изменил права доступа на 777 к файлу, не помогло.
  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz 11 марта 2011 г. 19:16, спустя 2 часа 33 минуты 6 секунд

  • Kikky

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 11 марта 2011 г. 19:54, спустя 38 минут 23 секунды

    Givi, всё понятно…дело в том, что это всё сделано…
  • Kikky

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 11 марта 2011 г. 20:24, спустя 29 минут 24 секунды

    http://kohanaframework.org/3.1/guide/kohana/tutorials/clean-urls - вот отличный мануал.

    Но мне всё равно не помогло, завтра попробую на другой машине, может в каких-то настройках апача или пхп что стоит не так..
  • wats

    Сообщения: 134 Репутация: N Группа: Кто попало

    Spritz 7 июля 2011 г. 15:58, спустя 117 дней 18 часов 34 минуты

    Использую Kohana v. 3.1.1.1 , хочу из адресной строки убрать index.php, то есть 'http://localhost/kohana/index.php/welcome/index' в 'http://localhost/kohana/welcome/index'.

    вообще то это в бутстрапе делается :D
  • Biggless

    Сообщения: 78 Репутация: N Группа: Кто попало

    Spritz 28 июля 2011 г. 18:35, спустя 21 день 2 часа 37 минут

    application/bootstrap.php

    Kohana::init(array(

    'base_url' => '/kohana/',
    'index_file' => FALSE,

    ));


    на некоторых серваках какая-то хрень с реврайтом случается, помогает
    RewriteRule .* index.php/$0 [PT]

    заменить на
    RewriteRule .* index.php [PT]

Пожалуйста, авторизуйтесь, чтобы написать комментарий!