Красивая адресная строка

Различные вопросы по установке и настройке фреймворка, конфигурции веб-сервера и IDE.
Ответить
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Красивая адресная строка

Сообщение Leffken »

Все привет.
поставил yii2 advanced и решил изменить вид записи в адресной строке, т.к.

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

http://yii2ad.local/index.php?r=site%2Fabout
выглядит не очень красиво.

Сделал вот такие действия :
добавил в /common/config/main.php

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

'urlManager' => [
            'enablePrettyUrl' => true,
        'showScriptName' => false,            
],
Добавил в /frontend/config/main.php

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

'homeUrl' => '/',
'components' => [
'request' => [
            'baseUrl' => '',                
        ],
        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            
            'rules' => [
                '' => 'site/index',
                '<action>' => 'site/<action>',  //это как я понял убирает из строки и контроллер, но если их несколько лучше оставить, чтобы не 
                                       //    запутаться.     
            ],
            
        ],
        'assetManager' => [
            'basePath' => '@webroot/assets',
            'baseUrl' => '@web/assets'
        ],    
],
Добавил в /backend/config/main.php

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

'homeUrl' => '/admin',
'components' => [
'request' => [
            'baseUrl' => '/admin',                
        ],
        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            
            'rules' => [
                '' => 'site/index',
                '<action>' => 'site/<action>',     
            ],
            
        ],
        'assetManager' => [
            'basePath' => '@webroot/assets',
            'baseUrl' => '@web/assets'
        ],    
],
Так же создал файлы .htaccess в корне приложения

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

# Mod_Autoindex
<IfModule mod_autoindex.c>
  # Запрещаем просмотр содержимого папок
  Options -Indexes
</IfModule>

# Mod_Rewrite
<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  # Включаем mod_rewrite
  RewriteEngine On
  IndexIgnore */*
  # Перенаправляем admin на входной скрипт админки
  RewriteRule ^admin/(.*)?$ /backend/web/$1 [L,PT]
  # Перенаправляем все запросы на входной скрипт
  RewriteRule ^([^/].*)?$ /frontend/web/$1
</IfModule>
в .htaccess в /frontend/web и /backend/web

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

AddDefaultCharset utf-8
RewriteEngine on
# Если это папка или файл, открываем его
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# В противном случае перенаправляем на index.php
RewriteRule . index.php
После всех этих действий, после стандартной установки yii2 advanced вот такие проблемы :
Не находит ни какие views, в адресной строке : http://yii2ad.local/about , а на странице :
The requested URL /about was not found on this server.
PS главную открывает

и не находит нижний toolbar , внизу страницы : The requested URL /debug/default/toolbar was not found on this server.

Ребят подскажите, что я пропустил? Какой момент. Большую часть этих действий я нашел на этом же форуме, но ничего не вышло, решил создать отдельную тему.
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Re: Красивая адресная строка

Сообщение Leffken »

Создал проект basic и решил попробовать там. Как оказалось проблема в
'showScriptName' => false,

Но вот почему, вопрос остается открытым.

.htaccess имеет вид

AddDefaultCharset utf-8
Options +FollowSymLinks
IndexIgnore */*

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

virtualhost для basic :

<VirtualHost 127.0.0.1>
ServerName bapp.local
DocumentRoot "c:/site/bapp/web/"
ErrorLog "c:/site/bapp/logs/error.log"
CustomLog "c:/site/bapp/logs/access.log" common
</VirtualHost>
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Красивая адресная строка

Сообщение ElisDN »

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

<VirtualHost 127.0.0.1>
    ServerName bapp.local
    DocumentRoot "c:/site/bapp/web/"
    ErrorLog "c:/site/bapp/logs/error.log"
    CustomLog "c:/site/bapp/logs/access.log" common
    Options FollowSymLinks
    AllowOverride All
</VirtualHost> 
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Re: Красивая адресная строка

Сообщение Leffken »

ElisDN писал(а):

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

<VirtualHost 127.0.0.1>
    ServerName bapp.local
    DocumentRoot "c:/site/bapp/web/"
    ErrorLog "c:/site/bapp/logs/error.log"
    CustomLog "c:/site/bapp/logs/access.log" common
    Options FollowSymLinks
    AllowOverride All
</VirtualHost>
не запускается apache
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Красивая адресная строка

Сообщение ElisDN »

Leffken писал(а):не запускается apache

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

<VirtualHost 127.0.0.1>
    ServerName bapp.local
    DocumentRoot "c:/site/bapp/web/"
    ErrorLog "c:/site/bapp/logs/error.log"
    CustomLog "c:/site/bapp/logs/access.log" common
    <Directory /> 
        Options FollowSymLinks
        AllowOverride All
    </Directory> 
</VirtualHost> 
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Re: Красивая адресная строка

Сообщение Leffken »

ElisDN писал(а):
Leffken писал(а):не запускается apache

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

<VirtualHost 127.0.0.1>
    ServerName bapp.local
    DocumentRoot "c:/site/bapp/web/"
    ErrorLog "c:/site/bapp/logs/error.log"
    CustomLog "c:/site/bapp/logs/access.log" common
    <Directory /> 
        Options FollowSymLinks
        AllowOverride All
    </Directory> 
</VirtualHost>
Ничего не изменилось, все так же не находит

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

The requested URL /site/index was not found on this server.
 
andrew.pol
Сообщения: 50
Зарегистрирован: 2015.12.25, 17:39

Re: Красивая адресная строка

Сообщение andrew.pol »

Покажите error-log апача
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Re: Красивая адресная строка

Сообщение Leffken »

andrew.pol писал(а):Покажите error-log апача
после перезапуска апача получил

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

[Mon Feb 01 15:17:53.355998 2016] [mpm_winnt:notice] [pid 9512:tid 376] AH00424: Parent: Received restart signal -- Restarting the server.
[Mon Feb 01 15:17:55.356113 2016] [mpm_winnt:notice] [pid 10124:tid 272] AH00364: Child: All worker threads have exited.
[Mon Feb 01 15:17:56.446175 2016] [ssl:warn] [pid 9512:tid 376] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[Mon Feb 01 15:17:58.870314 2016] [mpm_winnt:notice] [pid 9512:tid 376] AH00455: Apache/2.4.18 (Win64) OpenSSL/1.0.2e PHP/5.6.17 configured -- resuming normal operations
[Mon Feb 01 15:17:58.870314 2016] [mpm_winnt:notice] [pid 9512:tid 376] AH00456: Apache Lounge VC11 Server built: Dec 11 2015 13:02:26
[Mon Feb 01 15:17:58.870314 2016] [core:notice] [pid 9512:tid 376] AH00094: Command line: 'c:\\apache24\\bin\\httpd.exe -d C:/Apache24'
[Mon Feb 01 15:17:58.937318 2016] [mpm_winnt:notice] [pid 9512:tid 376] AH00418: Parent: Created child process 4612
AH00548: NameVirtualHost has no effect and will be removed in the next release C:/Apache24/conf/extra/httpd-vhosts.conf:17
[Mon Feb 01 15:18:00.182389 2016] [ssl:warn] [pid 4612:tid 272] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[Mon Feb 01 15:18:00.196390 2016] [mpm_winnt:notice] [pid 4612:tid 272] AH00354: Child: Starting 64 worker threads.
 
andrew.pol
Сообщения: 50
Зарегистрирован: 2015.12.25, 17:39

Re: Красивая адресная строка

Сообщение andrew.pol »

Мне кажется дело в опции AllowOverride All. Надо бы ее включить на этом виртуалхосте.
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Re: Красивая адресная строка

Сообщение Leffken »

andrew.pol писал(а):Мне кажется дело в опции AllowOverride All. Надо бы ее включить на этом виртуалхосте.
дело было в ней, только я ее не правильно включал на виртуальном хосте изначально, нужно было так :

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

<Directory c:/site/bapp> 
        Options FollowSymLinks
        AllowOverride All
</Directory> 
 
Еще вопрос, а можно ли включить AllowOverride All но не в настройках хоста, а где нибудь в проекте ?
andrew.pol
Сообщения: 50
Зарегистрирован: 2015.12.25, 17:39

Re: Красивая адресная строка

Сообщение andrew.pol »

В проекте нет. Эта опция отвечает за обработку файлов htaccess, а это привилегия апача.
Leffken
Сообщения: 115
Зарегистрирован: 2015.07.10, 15:49
Откуда: yola
Контактная информация:

Re: Красивая адресная строка

Сообщение Leffken »

andrew.pol писал(а):В проекте нет. Эта опция отвечает за обработку файлов htaccess, а это привилегия апача.
Спасибо!
Ответить