Не получается установить контролер по умолчанию, вместо site

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
hrupin
Сообщения: 45
Зарегистрирован: 2014.06.30, 10:20

Не получается установить контролер по умолчанию, вместо site

Сообщение hrupin »

Добрый день. Подскажите как установить контроллер по умолчанию. А то что-то ни как не получается
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Не получается установить контролер по умолчанию, вместо

Сообщение codrilla »

В конфиге main.php можно установить для 'defaultRoute'=> 'контроллер/экшен'
hrupin
Сообщения: 45
Зарегистрирован: 2014.06.30, 10:20

Re: Не получается установить контролер по умолчанию, вместо

Сообщение hrupin »

у меня basic, в папке config есть web.php. Я в него добавлял в urlManager или надо было в components?
hrupin
Сообщения: 45
Зарегистрирован: 2014.06.30, 10:20

Re: Не получается установить контролер по умолчанию, вместо

Сообщение hrupin »

Спасибо, что то я совсем туплю. А как убрать ?r= . Я пытался добавлять настройки rules urlManager, но что-то не срабатывало
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Не получается установить контролер по умолчанию, вместо

Сообщение codrilla »

'enablePrettyUrl' => true должно помочь
hrupin
Сообщения: 45
Зарегистрирован: 2014.06.30, 10:20

Re: Не получается установить контролер по умолчанию, вместо

Сообщение hrupin »

подставлял и urlManager и в rules и в components и в $config, все равно при запросе /web/login/signup выдает 404
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Не получается установить контролер по умолчанию, вместо

Сообщение codrilla »

Ну проблема в том, что не отображается имя скрипта. Чтобы ваш вариант заработал нужно добавить ещё и 'showScriptName' => false, а так же в .htaccess написать
RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php
hrupin
Сообщения: 45
Зарегистрирован: 2014.06.30, 10:20

Re: Не получается установить контролер по умолчанию, вместо

Сообщение hrupin »

Спасибо большое, заработало, только я когда добавляю к documentRoot web выдает 500 ошибку.

Код: Выделить всё

#user 'te' virtual host 'ca.ru' configuration file
<VirtualHost 84.142.45.77:80>
        ServerName ca.ru
        AddDefaultCharset UTF-8
        AssignUserID te te
        DocumentRoot /var/www/te/data/www/ca.ru
        ServerAdmin webmaster@ca.ru
        ServerAlias www.ca.ru
        <FilesMatch "\.ph(p[3-5]?|tml)$">
                SetHandler application/x-httpd-php
        </FilesMatch>
        <FilesMatch "\.phps$">
                SetHandler application/x-httpd-php-source
        </FilesMatch>
      
</VirtualHost>
<Directory /var/www/te/data/www/ca.ru>
        php_admin_flag engine on
        Options +Includes -ExecCGI
</Directory>

 
я понимаю что обнаглел, но помоги пожалуйста
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Не получается установить контролер по умолчанию, вместо

Сообщение codrilla »

В конфигурационном файле для виртуального хоста добавляете веб? Самое простое - посмотреть в логах апача, что именно за ошибка.
hrupin
Сообщения: 45
Зарегистрирован: 2014.06.30, 10:20

Re: Не получается установить контролер по умолчанию, вместо

Сообщение hrupin »

Да, в настойках виртуального хоста
Ошибка в логах

Код: Выделить всё

Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion'
я в настройках сервера не силен, я так понимаю идет какой-то редирект
RGF
Сообщения: 213
Зарегистрирован: 2013.01.29, 13:19

Re: Не получается установить контролер по умолчанию, вместо

Сообщение RGF »

подскажите,
defaultRoute'=> 'контроллер/экшен'
в advanced где надо прописать?
в main.php в components эффекта не дает
HQ0
Сообщения: 182
Зарегистрирован: 2012.10.17, 17:21

Re: Не получается установить контролер по умолчанию, вместо

Сообщение HQ0 »

Я точно не знаю почему main.php в components, но
http://www.yiiframework.com/doc-2.0/yii ... ute-detail
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: Не получается установить контролер по умолчанию, вместо

Сообщение yiijeka »

У меня тоже не работает defaultRoute, я использую rules' => ['/' => 'project/index', ...
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: Не получается установить контролер по умолчанию, вместо

Сообщение yiijeka »

Поиск по папке ядра фреймворка выдаёт, что $this->defaultRoute используется то у модуля vendor/yiisoft/yii2/base/Module.php:493. Больше нигде...
Хотя если удалить urlManager из конфига, то меня перебрасывает на defaultRoute
RGF
Сообщения: 213
Зарегистрирован: 2013.01.29, 13:19

Re: Не получается установить контролер по умолчанию, вместо

Сообщение RGF »

поместил в main.php
<?php
return [
............
'defaultRoute'=> 'controller',
];

заработало
спасибо
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Не получается установить контролер по умолчанию, вместо

Сообщение zelenin »

читайте документацию, там все описано.
RGF
Сообщения: 213
Зарегистрирован: 2013.01.29, 13:19

Re: Не получается установить контролер по умолчанию, вместо

Сообщение RGF »

только такая ерунда появилась для неверно указанного маршрута
exception 'yii\base\InvalidRouteException' with message 'Unable to resolve the request "site/error".' in ..\vendor\yiisoft\yii2\base\Module.php:468
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Не получается установить контролер по умолчанию, вместо

Сообщение zelenin »

RGF писал(а):только такая ерунда появилась для неверно указанного маршрута
exception 'yii\base\InvalidRouteException' with message 'Unable to resolve the request "site/error".' in ..\vendor\yiisoft\yii2\base\Module.php:468
у вас должен быть прописан экшн error в контроллере и указан как обработчик ошибок. Читайте документацию, скачайте advanced app, посмотрите как он устроен
RGF
Сообщения: 213
Зарегистрирован: 2013.01.29, 13:19

Re: Не получается установить контролер по умолчанию, вместо

Сообщение RGF »

прописано:
<?php
return [
'components' => [
..........
'errorHandler' => [
'errorAction' => 'error/index',
],
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Не получается установить контролер по умолчанию, вместо

Сообщение zelenin »

а ErrorController у вас есть?

ищется-то site/error, значит не применяется конфиг - либо не тот конфиг, либо в неверном месте написали.

'components' => [
'errorHandler' => [
'errorAction' => '/main/default/error'
],

вот мой код - все работает
Ответить