Php Yii2:如何创建到公共的路由
我想在“common”中创建一个“errorAction”。因此,当页面不存在时,将被重定向到“common/controllers/ErrorController”中的操作“index” 我有这个: common\main.php 但我希望它重定向到那里,即使服务器上没有“前端”文件夹(由于维护,它暂时不存在) 我使用扩展名“Yii2维护模式组件”,它会正确重定向到我在“common”文件夹中创建的视图。 问题是,当我从服务器上删除“backend”和“frontend”文件夹时,它不会重定向到维护页面,并显示Apache的默认页面“404notfound” common\main-local.phpPhp Yii2:如何创建到公共的路由,php,yii2,Php,Yii2,我想在“common”中创建一个“errorAction”。因此,当页面不存在时,将被重定向到“common/controllers/ErrorController”中的操作“index” 我有这个: common\main.php 但我希望它重定向到那里,即使服务器上没有“前端”文件夹(由于维护,它暂时不存在) 我使用扩展名“Yii2维护模式组件”,它会正确重定向到我在“common”文件夹中创建的视图。 问题是,当我从服务器上删除“backend”和“frontend”文件夹时,它不会重定向
您可以通过在文档根目录中添加
.htaccess
文件来实现此目的。使用此配置,当文件夹/文件不存在而不是404错误时,您已在common
页面上重定向
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . route/to/your/common/handler [L]
common
- controllers
- - ErrorController.php
- views
- - error
- - - index.php
...
'maintenanceMode' => [
'class' => 'brussens\maintenance\MaintenanceMode',
'layoutPath' => '@common/views/layouts/maintenance',
'viewPath' => '@common/views/maintenance/index',
'roles' => [
'administrator',
],
'urls' => [
'site/login',
],
],
...
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . route/to/your/common/handler [L]