Как сделать чтобы доступ к странице был только через мобильное приложение?

Для ограничения доступа к странице только через мобильное приложение в Yii, можно использовать различные методы аутентификации и авторизации.

Вариант 1: Использование HTTP заголовка
Вы можете воспользоваться возможностями Yii для чтения HTTP заголовков и проверки значения определенного заголовка, который будет указывать на то, что запрос был отправлен из мобильного приложения. Для этого можно воспользоваться событием beforeAction в контроллере Yii, которое будет выполнять проверку перед выполнением требуемого действия.

Например, можно добавить следующий код в контроллер:

public function beforeAction($action)
{
    if (!$this->isMobileAppRequest()) {
        throw new yiiwebForbiddenHttpException('Доступ запрещен');
    }

    return parent::beforeAction($action);
}

protected function isMobileAppRequest()
{
    $userAgent = Yii::$app->request->getUserAgent();

    // Здесь необходимо проверить значение HTTP заголовка, которое идентифицирует ваше мобильное приложение

    return /* Проверка значения заголовка */;
}

Вариант 2: Использование токена авторизации
Вы можете использовать токен авторизации для определения, что запрос был отправлен из мобильного приложения. При каждом запросе из мобильного приложения должен быть передан токен авторизации в заголовке или параметре запроса. Затем, в контроллере, вы можете выполнить проверку наличия и валидности токена.

Например, вы можете добавить следующий код в контроллер:

public function beforeAction($action)
{
    if (!$this->isMobileAppRequest()) {
        throw new yiiwebForbiddenHttpException('Доступ запрещен');
    }

    return parent::beforeAction($action);
}

protected function isMobileAppRequest()
{
    $authToken = Yii::$app->request->getHeaders()->get('Authorization');

    // Здесь необходимо проверить валидность токена авторизации и его соответствие вашему мобильному приложению

    return /* Проверка валидности токена */;
}

В обоих вариантах вам необходимо расширить код в соответствии с вашими требованиями и спецификацией вашего мобильного приложения. Важно учитывать, что эти методы не являются абсолютно надежными и могут быть обмануты, поэтому важно принять дополнительные меры для обеспечения безопасности.