- .htaccess для Yii 2 advanced
- Пошаговая инструкция
- Шаг 1
- Шаг 2
- Шаг 3
- Шаг 4
- Шаг 5
- Рекомендуемые
- Комментарии
- Как правильно настроить .htaccess в yii2 чтобы не было перенаправление на basic/web/?
- Yii2 REST, почему не работает маршрутизация и псевдонимы для fields()?
- Yii2 настройка
- Фреймворк YII2. Быстрый старт
- Yii Framework
- Поясните конфигурацию .htaccess или index.php
- Поясните конфигурацию .htaccess или index.php
- Re: Поясните конфигурацию .htaccess или index.php
- Re: Поясните конфигурацию .htaccess или index.php
- Re: Поясните конфигурацию .htaccess или index.php
.htaccess для Yii 2 advanced
Настройка .htaccess для Yii 2 advanced в Windows при использовании Open Server. На сервере с unix системой такой .htaccess тоже будет работать, проверено.
Пошаговая инструкция
Шаг 1
В корень (@app) проекта добавляем .htaccess со следующим содержанием:
Где admin — путь к @backend/web, его можно заменить на то, что вам больше нравится, например: administrator, cms-admin или ya-admin)
Шаг 2
В папку @frontend/web добавляем файл .htaccess со следующим содержанием:
Шаг 3
В файле @frontend/config/main.php в элемент components массива добавляем:
Получится что-то вроде (более подробный пример):
Шаг 4
В папку @backend/web добавляем файл .htaccess со следующим содержанием:
Шаг 5
В файле @backend/config/main.php в элемент components массива добавляем:
Если у вас есть вопросы или предложения по улучшению кода описанного в статье пишите в комментариях.
Я всегда открыт к конструктивному диалогу
Рекомендуемые
Комментарии
Привет!
Подскажи, какое правило надо прописать, что бы иметь доступ к общей папке files, которая лежит рядом с backend и frontend:
-backend
-frontend
-files
-common
-vendor
Правильно ли я понимаю из поста, что надо прописать так?:
RewriteCond %
RewriteRule ^static/(.*)$ files/$1 [L]
вроде работает, но может что-то слоамлось? или это не правильно?
Я бы создал символичскую ссылку на директорию
ln -s /path_to_folder /path_from_folder_link
Это да. Но, а если учесть, что дома разработка идет под windows, а проект будет жить на обычном хостинге, то этот вариант, к сожалению, отпадает 🙁
Директива Alias позволяет незаметно для клиентов связывать запрашиваемые URL с любой частью файловой системы сервера. Например:
Alias /images/ /ftp/public/images/
Директива в примере выше приведёт к тому, что Apache перед тем, как выполнять поиск контента в файловой системе, в строке запроса заменит /images/ на /ftp/public/images/. Таким образом запрос URL http://www.example-domain.com/images/example-image.jpg заставит искать Apache файл example-image.jpg в физическом каталоге /ftp/public/images/ вместо каталога DOCUMENT_ROOT/images.
Прописывается в виртуал хосте например
XAMPP v.3.2.2 -> после добавления ‘baseUrl’ => », (шаг 3), выдает ошибку 404:
Toggle navigation My Company
Home
About
Contact
Signup
Login
Not Found (#404)
Page not found.
The above error occurred while the Web server was processing your request.
Please contact us if you think this is a server error. Thank you.
© My Company 2016
Powered by Yii Framework
‘app-frontend’,
‘basePath’ => dirname(__DIR__),
‘bootstrap’ => [‘log’],
‘controllerNamespace’ => ‘frontend\controllers’,
‘components’ => [
‘request’ => [
‘csrfParam’ => ‘_csrf-frontend’,
‘baseUrl’ => »,
],
‘user’ => [
‘identityClass’ => ‘common\models\User’,
‘enableAutoLogin’ => true,
‘identityCookie’ => [‘name’ => ‘_identity-frontend’, ‘httpOnly’ => true],
],
‘session’ => [
// this is the name of the session cookie used for login on the frontend
‘name’ => ‘advanced-frontend’,
],
‘log’ => [
‘traceLevel’ => YII_DEBUG ? 3 : 0,
‘targets’ => [
[
‘class’ => ‘yii\log\FileTarget’,
‘levels’ => [‘error’, ‘warning’],
],
],
],
‘errorHandler’ => [
‘errorAction’ => ‘site/error’,
],
‘urlManager’ => [
‘enablePrettyUrl’ => true,
‘showScriptName’ => false,
‘rules’ => [
РЕШЕНО!
(фреймворк установлен в директорию C:\xampp\htdocs\yii209\), внесены изменения:
‘baseUrl’ => ‘/yii209’,
РЕЗУЛЬТАТ нормально отображается по следующим адресам:
http://localhost/yii209/
http://localhost/yii209/about
http://localhost/yii209/contact
http://localhost/yii209/signup
http://localhost/yii209/login
Спасибо тебе, emsi. Я уже 2 дня убила на эту проблему, весь интернет перерыла. Попробовала, как ты написал и у меня так тоже заработало! Respect
Прошло два года, а Ваш комментарий всё еще спасает жизни, присоединяюсь к Анне — огромное спасибо!
Почему то у меня не получается (
При такой конфигурации htaccess в ассеты не может попасть
http://ipic.su/ans7Q.png
Попробуйте в корень добавть .htaccess с таким содержанием:
Options +FollowSymlinks
RewriteEngine On
# deal with admin first
RewriteCond %
RewriteRule ^admin/assets/(.*)$ backend/web/assets/$1 [L]
RewriteRule ^admin/css/(.*)$ backend/web/css/$1 [L]
RewriteRule ^admin/js/(.*)$ backend/web/js/$1 [L]
RewriteCond %
RewriteCond %
RewriteRule ^.*$ backend/web/index.php [L]
RewriteCond %
RewriteRule ^assets/(.*)$ frontend/web/assets/$1 [L]
RewriteRule ^css/(.*)$ frontend/web/css/$1 [L]
RewriteRule ^js/(.*)$ frontend/web/js/$1 [L]
RewriteRule ^images/(.*)$ frontend/web/images/$1 [L]
RewriteRule ^(.*)$ frontend/web/$1 [L]
Источник
Как правильно настроить .htaccess в yii2 чтобы не было перенаправление на basic/web/?
Не удается решить проблему с перенаправлоением в htaccess.
Развернул Yii2 в папке public_html через composer, по умолчанию проект добавил папку basic.
Сейчас в папке public_html у меня 2 каталога:
basic
vendor
А также три файла
.htassess
composer.phar
composer.lock
Я так понял разворачивать фреймворк надо было без папки basic, но я уже так сделал, и теперь мне не удается решить одну проблему. При вводе адреса сайта, идет перенаправоление на https://site.ru/basic/web/
Ниже код htaccess в корне сайта
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteCond %
RewriteRule ^basic/assets/(.*)$ /web/assets/$1 [L]
RewriteRule ^basic/css/(.*)$ web/css/$1 [L]
RewriteRule ^basic/js/(.*)$ web/js/$1 [L]
RewriteRule (.*) basic/web/$1
RewriteCond %
RewriteCond %
RewriteRule . basic/web/index.php
Это .htaccess в папке basic/web
RewriteEngine on
RewriteCond %
RewriteCond %
RewriteRule . index.php [L]
Самое непонятное, что все работало нормально, когда заходишь на сайт через HTTPS
Но когда заходишь через http:// идет перенаправление на https с добавлением basic/web
Кто шарит в настройках htaccess, прошу помочь. Можно за money!
Источник
Yii2 REST, почему не работает маршрутизация и псевдонимы для fields()?
Имеем:
- VPS сервер Debian 7.8
- Apache 2.2 (Black-end) + Nginx 1.2 (Front статика)
- Yii2 (Base application template)
- PostgreSQL 9+
.htaccess папки web:
Содержимое контроллера CodeController:
Настроить REST, который будет отдавать данные в виде XML из двух таблиц, связанных
через relation (hasOne). по ссылке вроде:
Т.е. по хэшу мы получаем ID модели из таблицы code
А по этому ID вытаскиваем все данные из таблицы models
В первый раз пытаюсь настроить REST, делаю всё строго по официальной документации.
Но как обычно ничего не работает с первого раза.
Ссылка вида /code — возвращает все данные
Ссылка вида /code/1 — возвращает 404
Ссылка вида /code?fields=id — возвращает все ID
Ссылка вида /code?fields=id,mformat — возвращает только ID, псевдоним mformat для поля format не работает
Ссылка вида /code?fields=id,format — возвращает ID и format
Ссылка вида /code?fields=id,format,name — возвращает ID, format и name(имя точно такое-же как и в базе, без форматирования, которое указанно в контроллере)
Пытался решить проблему сам, упорно гуглил, но так и не смог понять, почему не работают псевдонимы.
extraFields так-же игнорируются. Помогите пожалуйста!
Источник
Yii2 настройка
Дата публикации: 2017-04-25
От автора: приветствую вас, друзья. Мы продолжаем цикл статей, посвященных знакомству с фреймворком Yii2. В этой статье мы поговорим о такой теме, как Yii2 настройка. Здесь мы рассмотрим различные настройки фреймворка: файл htaccess, настройки Apache и Nginx, конфигурация почты и т.д.
В процессе работы с фреймворком Yii вам часто придется работать с различными настройками фреймворка. Поэтому в данной статье мы рассмотрим некоторые из них. Начнем с ряда настроек, с которыми вам придется столкнуться сразу после установки фреймворка.
Как вы помните, публичной папкой фреймворка является папка web. Именно в нее нужно перенаправить все запросы. Как это сделать? Во-первых, можно воспользоваться возможностями файла htaccess. Для этого нам потребуется создать пару таких файлов. Первый файл мы поместим в корень Yii, а второй — в папку web. Далее нам необходимо будет добавить следующие строки кода в первый файл htaccess:
Фреймворк Yii2. Быстрый старт
Получите курс и узнайте, как с помощью фреймворка Yii2 разрабатывать веб-приложения на примере блога
Эта настройка htaccess включит модуль Apache mod_rewrite и отправит все запросы в папку web. Ну а в файле htaccess из папки web мы напишем следующие строки:
Эта настройка все запросы, которые не идут к реально существующим файлам и папкам, перенаправит на фронт-контроллер фреймворка — файл index.php. После этой настройки htaccess при обращении к корню сайта мы должны попасть на главную страницу. Напомню, по умолчанию, нам нужно обращаться для этого к папке web.
При настройке Yii, особенно на реальном сервере, возможно не всегда получится использовать файл htaccess. В этом случае можно обратиться к настройке сервера. Суть такой настройки сводится к тому, чтобы изменить корневую директорию сервера и сделать так, чтобы корневой стала директория web.
В документации на официальном сайте можно найти необходимые строки кода для настройки Apache и Nginx. Воспользуйтесь ими, чтобы произвести необходимую конфигурацию. Если вы не имеете доступа к настройкам сервера, тогда можно обратиться в поддержку вашего хостинга, как правило, саппорт помогает с такими вопросами.
Это далеко не все настройки, с которыми вам придется столкнуться в процесс работы с фреймворком. Но это первые из них, которые вам потребуются уже на первом этапе работы, фактически сразу после установки. На этом сегодня все. Больше о фреймворке вы можете узнать из наших бесплатных или платных уроков. Также создание простейшего блога на Yii2 можно посмотреть в этом цикле уроков.
Фреймворк YII2. Быстрый старт
Создание блога с использованием фреймворка Yii2!
Источник
Yii Framework
Поясните конфигурацию .htaccess или index.php
Поясните конфигурацию .htaccess или index.php
Сообщение astappev » 2014.02.18, 20:46
Парадоксальная вещь. Не могу разобраться с на первый взгляд простой проблемой. В интернете нет нормального пояснения.
Устанавливая https://github.com/yiisoft/yii2/tree/ma . s/advanced
Мне нужно добится что бы по корневой директории я имел доступ к frontend/web заходя на http://localhost, а так же как то иметь доступ к backend/web.
Как мне настроить .htaccess или создать index.php
Предлагаю это добавить в офф туториал или внедрить в базовый шаблон, как это было в первой версии.
Изменять корневую директорию не хостинге я не могу.
Re: Поясните конфигурацию .htaccess или index.php
Сообщение futbolim » 2014.02.18, 21:13
Re: Поясните конфигурацию .htaccess или index.php
Сообщение vova07 » 2014.02.18, 21:27
В обеих случаях админка должна быть доступна по адресу: http://my-site.com/administrator/
Re: Поясните конфигурацию .htaccess или index.php
Сообщение astappev » 2014.02.18, 22:08
При переходе по любой ссылке, они формируются включая полный путь (Способ 2).
Способ 1, ошибка.
Источник