php - una - Cómo configurar el controlador predeterminado en yii2
yii2 requerimientos (7)
Tengo UserControler
y lo ejecuto en el servidor virtual http://basic.com/index.php?r=user/index . ¿Cómo puedo configurar UserController
y el index
acción para que sean los predeterminados cuando voy a http://basic.com
Esto se puede configurar dentro de la configuración, ver Controlador predeterminado :
[
''defaultRoute'' => ''main'',
]
Pero tenga en cuenta que esto está estrechamente relacionado con el enrutamiento, que puede ser completamente personalizado por el componente urlManager
. Entonces, si quiere decir que domain/profile
comporta como domain/user/profile
, estas reglas para urlManager
podrían ser otra forma de hacerlo:
''rules'' => array(
''<action:/w+>'' => ''user/<action>'', // <-- use UserController by default
''<controller:/w+>/<id:/d+>'' => ''<controller>/view'',
''<controller:/w+>/<action:/w+>/<id:/d+>'' => ''<controller>/<action>'',
''<controller:/w+>/<action:/w+>'' => ''<controller>/<action>'',
),
Espero que esto ayude a alguien :)
Con yii2 pude hacerlo en el administrador de la url con:
''rules''=> [
[''pattern''=>''<action>'', ''route''=>''controller/<action>''],
]
Esta no es la respuesta a la pregunta , sin embargo, puede ser útil saber: hay una propiedad yii/web/Application
en yii/web/Application
que se define como:
La configuración que especifica una acción del controlador que debe manejar todas las solicitudes de los usuarios.
Uso:
''catchAll'' => [''controller/action'']
Entonces, cada solicitud a http://basic.com llamará controller/action
Como pocas personas ya dijeron, debe agregar defaultRoute
en el archivo de configuraciones.
Así es como debería verse:
//config/web.php
en la plantilla básica o backend/config/main.php
en avanzado
$config = [
...
''components'' => [
...
],
''params'' => $params,
''defaultRoute'' => ''user/index'',
];
Prueba las otras soluciones ... Si no funcionan, utiliza mi truco simple ...
Simplemente crea una página index.php en la raíz.
Luego, en ese archivo, escribe este código:
return header(''Location: http://your page location'');
Abra el archivo web.php
de su carpeta de configuración y agregue lo siguiente:
''defaultRoute'' => ''admin''
a su arreglo $config
.