За последние 24 часа нас посетили 20649 программистов и 1113 роботов. Сейчас ищут 404 программиста ...

Ошибка при переносе на хостинг сайта

Тема в разделе "Yii", создана пользователем FIn, 20 окт 2017.

Метки:
  1. FIn

    FIn Новичок

    С нами с:
    9 авг 2017
    Сообщения:
    6
    Симпатии:
    0
    Сайт магазина сделан на Yii2-advanced. Хост: Hostinger

    Файлы были залиты на сервер, база данных через PhpMyadmin. На хостинге 2 аккаунта. На одном уже работает сайт с купленным доменом. На другой-пробую выложить этот сайт для тестирования.
    И вот здесь первая ошибка вышла: при переходе на адрес сайта выдаётся только список папок. Как настроить правильно?
    Ведь по структуре в yii2 - один адрес нужно делать для backend, другой -для fronted. Как это реализовать здесь? Т.е. правильней- регистрировать новый аккаунт и делать 1 домен и субдомен? Будут ли отображаться в таком случае изменения на fronted при редактировании информации в backend?
    [​IMG]

    2 Проблема.
    Пока, при переходе в dir. fronted/web выдаётся такая ошибка:
    [​IMG]

    На Open Server уже были таблицы и доступ в PhMypadmin с пустым паролем. Но зайдя в PhMypadmin на hostinger -там уже другой пользователь. Создать базу данных можно с обязательным названием вначале u470880980_и далее название базы. которое поменять
    нельзя. Поэтому в новый аккаунт импортировались таблицы другого аккаунта 'root'
    [​IMG]

    Файл с сonfig main-local


    PHP:
    1. <?php
    2. return [
    3.     'components' => [
    4.         'db' => [
    5.             'class' => 'yii\db\Connection',
    6.             'dsn' => 'mysql:host=mysql.hostinger.ru;dbname=u470880980_1',
    7.             'username' => 'u470880980_1',
    8.             'password' => 'пароль',
    9.             'charset' => 'utf8',
    10.         ],
    11.         'mailer' => [
    12.             'class' => 'yii\swiftmailer\Mailer',
    13.             'viewPath' => '@common/mail',
    14.             // send all mails to a file by default. You have to set
    15.             // 'useFileTransport' to false and configure a transport
    16.             // for the mailer to send real emails.
    17.             'useFileTransport' => true,
    18.         ],
    19.     ],
    20. ];
     
  2. FIn

    FIn Новичок

    С нами с:
    9 авг 2017
    Сообщения:
    6
    Симпатии:
    0
    Вообщем, 2 проблема решилась. В vendor\yiisoft\yii2\db\mysql почему-то не было файлов Schema и QueryBuilder. На сайте руководства вопросов есть инфа, что:' Мы не поддерживаем базу данных information_schema. Все запросы к ней запрещены, так как это вызывает высокую нагрузку процессора.' В FireZilla нет сообщений, что какой-то файл не передался. Вообщем, эти 2 файла добавились на сервер, страница открылась.

    Вопрос остался: как настроить домены правильно для backend и fronted? Cейчас на хостинге имеется 2 хостинг аккаунта-один работает с оплаченным доменом. На втором - этот сайт. т.е. к нему для backend нужно создавать субдомен?
    Как правильно в таком случае развернуть проект? Читаю руководство Yii2 http://www.yiiframework.com/wiki/799/yii2-app-advanced-on-single-domain-apache-nginx/ - и так понимаю, что нужно в корне сайта создать .htaccess(он сейчас пустой) и прописать там пути до фронтенда и бекэнда? А что именно прописывать нужно?
    В настройках Open Server у меня было указано Apache-2-4-x64 PhP -5.6-x64 MsSQL -5.5
     
  3. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    вообще самый простой вариант сделать домен и поддомен....
    и при создании поддомена указать backend
    а при создании домена указать front собственно
    если на хостинге есть панелька - то там это удобно сделать..
     
  4. FIn

    FIn Новичок

    С нами с:
    9 авг 2017
    Сообщения:
    6
    Симпатии:
    0

    У меня бесплатный аккаунт на Hostinger. Там нельзя сейчас создать субдомен(
     
  5. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.548
    Симпатии:
    1.754
    Так даже в доках по-моему есть вариант, как advanced на shared-е поднять. Трюки надо с htaccess делать. Хотя я на шаредах предпочитаю basic-шаблон использовать. Я вообще редко advanced пользуюсь - у меня не тот масштаб приложений, я считаю. Админка-модуль для небольших проектов удобнее, чем админка-отдельный сайт. Вот инструкция от разработчика фреймворка: https://github.com/yiisoft/yii2-app-advanced/blob/master/docs/guide/topic-shared-hosting.md, вот альтернативный вариант: https://github.com/mickgeek/yii2-advanced-one-domain-config. Если с английским не дружите, переводить для вас лень, попросите ещё кого-нибудь