如何在没有控制台访问权限的主机上处理 yii2 迁移?
我已在共享主机上成功创建并上传了高级模板.
I've succesfully created and uploaded advanced template on my shared host.
下一步,我必须运行yii migrate
.
但我不能,因为我没有控制台访问权限.
But I cannot because I've not the console access.
你有什么建议给我?
请注意
- 我不能改变主持人,因为这不是我的决定
- 我无法使用 SSH 访问服务器
- 我已经尝试过类似 PHPShell 的东西,但是我在尝试运行时遇到了
permissione denied
yii migrate --interactive=0
我也试过这个:向 frontend/controllers/siteController.php
public function actionMigrateUp()
{
// https://github.com/yiisoft/yii2/issues/1764#issuecomment-42436905
$oldApp = Yii::$app;
new yiiconsoleApplication([
'id' => 'Command runner',
'basePath' => '@app',
'components' => [
'db' => $oldApp->db,
],
]);
Yii::$app->runAction('migrate/up', ['migrationPath' => '@console/migrations/', 'interactive' => false]);
Yii::$app = $oldApp;
}
但是当我访问 /frontend/web/index.php?r=site/migrateUp
时,我得到了一个 404
But when I visit /frontend/web/index.php?r=site/migrateUp
I got a 404
异常 'yiiaseInvalidRouteException' 带有消息 'Unable to解决请求:site/migrateUp' 中C:xampphtdocswwwvendoryiisoftyii2aseController.php:122
exception 'yiiaseInvalidRouteException' with message 'Unable to resolve the request: site/migrateUp' in C:xampphtdocswwwvendoryiisoftyii2aseController.php:122
推荐答案
您创建的操作无法通过
The action that you have created is not accesible with
/frontend/web/index.php?r=site/migrateUp
但与
/frontend/web/index.php?r=site/migrate-up
否则一切都会好的.
相关文章