[РЕШЕНО]Yii2 настройка путей в UrlManager

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

[РЕШЕНО]Yii2 настройка путей в UrlManager

Сообщение ASYOU »

Всем Здравствуйте.
Прошу сильно тапками не кидать т.к. еще только начинаю свой тернистый путь.
Суть проблемы:
Настраиваю пути в Yii2 что бы убрать приставку web и прочее и столкнулся с проблемой что когда все вроде настроил перестало заходить напрямую на модуль.было что то типа Yii.loc/web/...../r=blog и все работало, а должно стать Yii.loc/blog но пишет что страница не найдена хотя все другие ссылки работают как надо может кто подскажет какие надо внести правки в urlManager или может в htaccess.
web.php

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

'baseUrl' => '',
'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'rules' => [
                '' => 'site/index',
                '<action>'=>'site/<action>',
                '<controller:\w+>/<id:\d+>'=>'<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
                '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',

            ],
        ],
        'assetManager' => [
            'basePath' => '@webroot/assets',
            'baseUrl' => '@web/assets'
        ],
    'modules' => [
        'blog' => [
            'class' => 'app\modules\blog\Module',
        ],
    ],
root/.htaccess

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

<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On
</IfModule>

<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_URI} ^/.*
    #RewriteRule ^assets/(.*)$ /web/assets/$1 [L]
    #RewriteRule ^css/(.*)$ web/css/$1 [L]
    #RewriteRule ^js/(.*)$ web/js/$1 [L]
    #RewriteRule ^images/(.*)$ web/images/$1 [L]
    RewriteRule ^(.*)$ web/$1 [L]

    RewriteCond %{REQUEST_URI} !^/web/
    RewriteCond %{REQUEST_FILENAME} !-f [OR]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^.*$ web/index.php
</IfModule> 
web/.htaccess

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

# Если это папка или файл, открываем его
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# В противном случае перенаправляем на index.php
RewriteRule . index.php
Последний раз редактировалось ASYOU 2015.07.29, 00:35, всего редактировалось 1 раз.
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Yii2 настройка путей в UrlManager

Сообщение futbolim »

Обсуждалось миллион раз. Добавьте web в адрес виртуального хоста.
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

Это я читал а без этого никак? Только на путях прописать? В Yii1 у меня все нормально выходило и без добавления в хост. Почему тогда здесь ничего не выходит?
Аватара пользователя
vitalik1183
Сообщения: 1675
Зарегистрирован: 2014.07.01, 08:42

Re: Yii2 настройка путей в UrlManager

Сообщение vitalik1183 »

Потому что document_root нужно переопределять
Yii2!
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

ок. делал по этому видео https://www.youtube.com/playlist?list=P ... IVzhFxvM7g у человека все вышло и без переопределения почему?
Аватара пользователя
vitalik1183
Сообщения: 1675
Зарегистрирован: 2014.07.01, 08:42

Re: Yii2 настройка путей в UrlManager

Сообщение vitalik1183 »

марс в созвездии венеры
Yii2!
andrei.obuhovski
Сообщения: 610
Зарегистрирован: 2015.07.16, 10:50

Re: Yii2 настройка путей в UrlManager

Сообщение andrei.obuhovski »

Судя по видео 'baseUrl' нужно вставить в request, а ты вставил в components
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

та нет стоит в реквестах.
vitalik1183 просто хочется разобраться как у него вышло и почему?
andrei.obuhovski
Сообщения: 610
Зарегистрирован: 2015.07.16, 10:50

Re: Yii2 настройка путей в UrlManager

Сообщение andrei.obuhovski »

Судя по тому коду, что ты привел, у тебя baseUrl и urlManager в одном уровне массива.
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

нет baseUrl у меня стоит в реквестах, а уже реквест находится на одном уровне с юрл
andrei.obuhovski
Сообщения: 610
Зарегистрирован: 2015.07.16, 10:50

Re: Yii2 настройка путей в UrlManager

Сообщение andrei.obuhovski »

Код говорит об обратном. Так заработало или нет?
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

кодга тему создавал baseUr порсто скопировал отдельно от кода.

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

components' => [
        'thumbnail' => [
            'class' => 'himiklab\thumbnail\EasyThumbnail',
            'cacheAlias' => 'assets/gallery_thumbnails',
        ],
        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '123123123',
            'baseUrl' => '',
        ],
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

как оно может заработать я ведь еще ничего неменял т.к несказали же что и где менять?
ASYOU
Сообщения: 16
Зарегистрирован: 2015.07.28, 02:16

Re: Yii2 настройка путей в UrlManager

Сообщение ASYOU »

Вроде решил добавил:
Для OpenServer:
зайти в настройки
вкладка домены
переключить на ручное управление доменами
добавить "имя домена" = "адрес.loc" и указать "папка домена" = "папка с проектом/web"
добавить в список
перезапустить
Только вопрос теперь такой:
Как сделать что бы все работало после заливки на хост?
Где настроить на хосте такую мульку сомневаюсь что там стоит тоже опенсервер и мне дадут такие правила писать. Подскажите как настраивается в таком случае хост (только попроще если можно без спец терминов:)))?
Ответить