Добрый день,
Такая проблема, не получается настроить
ЧПУ с
id . Улетаю в
404.htaccess в корне сайта:
AddDefaultCharset utf-8
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
</IfModule>
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_URI} ^/.*
RewriteRule ^(.*)$ web/$1 [L]
RewriteCond %{REQUEST_URI} !^/web/
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ web/index.php
</IfModule>
И еще
.htaccess в папке
web:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
В
config/web.php:
...
'components' => [
'request' => [
'cookieValidationKey' => '****',
'baseUrl' => '',
],
...
]
...
'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'rules' => [
'login' => 'auth/login',
'signup' => 'auth/signup',
'profile' => 'users/profile',
'password' => 'auth/password',
/////////////////////////
'<module:\w+>/<controller:\w+>/<id:\d+>' => '<module:\w+>/<controller>/view',
'<module:\w+>/<controller:\w+>/<action:\w+>/<id:\d+>' => '<module:\w+>/<controller>/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module:\w+>/<controller>/<action>',
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<action>'=>'site/<action>',
'' => 'site/index',
]
],
...
Следующие правила отрабатываются корректно:
'login' => 'auth/login',
'signup' => 'auth/signup',
'profile' => 'users/profile',
'password' => 'auth/password',
Если я ввожу в браузере левую часть, то получаю желаемую правую, но вот с данным фрагментов - проблема:
'<module:\w+>/<controller:\w+>/<id:\d+>' => '<module:\w+>/<controller>/view',
'<module:\w+>/<controller:\w+>/<action:\w+>/<id:\d+>' => '<module:\w+>/<controller>/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module:\w+>/<controller>/<action>',
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
Адреса вида:
domen/pages/2domen/pages/view/2domen/pages/update/2
Уводят в:
Not Found (#404)
The requested page does not exist.
Через
{update/view}?id={id} все работает
Много просмотрел, прочитал. Но все бестолку(
Помню, в первой версии такой проблемы у меня не было.
Подскажите пожалуйста, мастера - по какой причине у меня может быть данная проблема?