mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-20 16:38:22 +08:00
Merge pull request #8926 from githubjeka/hosting
RU Translation for tutorial-shared-hosting.md [skip ci]
This commit is contained in:
@@ -176,7 +176,7 @@ All Rights Reserved.
|
|||||||
* [Интернационализация](tutorial-i18n.md)
|
* [Интернационализация](tutorial-i18n.md)
|
||||||
* **TBD** [Отправка почты](tutorial-mailing.md)
|
* **TBD** [Отправка почты](tutorial-mailing.md)
|
||||||
* [Оптимизация производительности](tutorial-performance-tuning.md)
|
* [Оптимизация производительности](tutorial-performance-tuning.md)
|
||||||
* **TBD** [Работа на shared хостинге](tutorial-shared-hosting.md)
|
* [Окружение виртуального хостинга](tutorial-shared-hosting.md)
|
||||||
* **TBD** [Шаблонизаторы](tutorial-template-engines.md)
|
* **TBD** [Шаблонизаторы](tutorial-template-engines.md)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
120
docs/guide-ru/tutorial-shared-hosting.md
Normal file
120
docs/guide-ru/tutorial-shared-hosting.md
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
Окружение виртуального хостинга
|
||||||
|
==========================
|
||||||
|
|
||||||
|
Окружение виртуальных хостингов зачастую весьма ограничено в настройках конфигурации и структуры директорий.
|
||||||
|
Тем не менее, в большинстве случаев, внеся некоторые корректировки возможно запустить Yii2 на виртуальном хостинге.
|
||||||
|
|
||||||
|
Установка Basic приложения.
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
Поскольку на виртуальном хостинге обычно только один webroot, то лучше использовать Basic приложение. Прочитайте раздел
|
||||||
|
[Установка Yii](start-installation.md) и установите Basic приложение локально. После того как приложение работает локально,
|
||||||
|
можно сделать некоторые корректировки, которые помогут разместить приложение на виртуальном хостинге.
|
||||||
|
|
||||||
|
### Переименование webroot <span id="renaming-webroot"></span>
|
||||||
|
|
||||||
|
Подключитесь к вашему виртуальному хостингу используя FTP или другой способ. Вероятнее всего вы увидите следующее:
|
||||||
|
|
||||||
|
```
|
||||||
|
config
|
||||||
|
logs
|
||||||
|
www
|
||||||
|
```
|
||||||
|
|
||||||
|
В приведенном выше описании, `www` - это webroot директория вебсервера. Она может называться по-другому. Возможные названия:
|
||||||
|
`www`, `htdocs` или `public_html`.
|
||||||
|
|
||||||
|
В Basic приложении webroot называется `web`. Перед загрузкой своего приложения на виртуальный хостинг, переименуйте
|
||||||
|
локальный webroot на название webroot виртуального хостинга. Например `web` в `www` или `public_html`, в зависимости от
|
||||||
|
наименования webroot вашего хостинга.
|
||||||
|
|
||||||
|
### Корневая директория FTP доступна для записи
|
||||||
|
|
||||||
|
Если вы можете записать в корневую директорию, так где располагаются `config`, `logs` и `www`, то загрузите сюда же
|
||||||
|
`assets`, `commands` и остальные директории, также как у вас локально.
|
||||||
|
|
||||||
|
### Добавим настройки для вебсервера <span id="add-extras-for-webserver"></span>
|
||||||
|
|
||||||
|
Если ваш сервер Apache, то вы можете добавить в `web`(или `public_html`, или наподобие, там где располагается `index.php` файл)
|
||||||
|
директорию один файл `.htaccess` со следующим содержимым:
|
||||||
|
|
||||||
|
```
|
||||||
|
Options +FollowSymLinks
|
||||||
|
IndexIgnore */*
|
||||||
|
|
||||||
|
RewriteEngine on
|
||||||
|
|
||||||
|
# if a directory or a file exists, use it directly
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-f
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-d
|
||||||
|
|
||||||
|
# otherwise forward it to index.php
|
||||||
|
RewriteRule . index.php
|
||||||
|
```
|
||||||
|
|
||||||
|
В случае использования nginx не требуется каких-либо дополнительных настроек.
|
||||||
|
|
||||||
|
### Проверка требований
|
||||||
|
|
||||||
|
Для того чтобы запустить Yii, ваш веб-сервер должен соответствовать его требованиям. Минимальное требование к PHP - это
|
||||||
|
его версия 5.4. Для того, чтобы проверить требования, скопируйте `requirements.php` из корневого каталога в каталог webroot
|
||||||
|
и запустить его с помощью браузера, используя url `http://example.com/requirements.php`. Не забудьте после проверки требований
|
||||||
|
удалить файл `requirements.php`.
|
||||||
|
|
||||||
|
Установка Advanced приложения
|
||||||
|
---------------------------------
|
||||||
|
|
||||||
|
Установка Advanced приложения немного сложнее, чем установка Basic, из-за того, что в Advanced приложении
|
||||||
|
имеются две директории webroot, работа с которыми на виртуальном хостинге не поддерживается. Нам нужно внести изменения
|
||||||
|
в структуру директорий.
|
||||||
|
|
||||||
|
### Перемещение входных скриптов в одну директорию webroot
|
||||||
|
|
||||||
|
Для начала нам необходимо директория webroot. Создайте новую директорию и назовите её, так же как на виртуальном хостинге,
|
||||||
|
например как описывалось выше в [Переименование webroot](#renaming-webroot) `www` или `public_html`, или наподобие.
|
||||||
|
Затем создайте следующую структуру в `www` директории, которую вы только что создали:
|
||||||
|
|
||||||
|
```
|
||||||
|
www
|
||||||
|
admin
|
||||||
|
backend
|
||||||
|
common
|
||||||
|
console
|
||||||
|
environments
|
||||||
|
frontend
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
|
`www` будет нашей фронтенд директорией, переместите в неё всё из `frontend/web`. Также поступите и для `backend/web`,
|
||||||
|
скопировав всё в `www/admin`. В каждом случае нужно настроить пути внутри файлов `index.php` и `index-test.php`.
|
||||||
|
|
||||||
|
### Отдельные сессии и куки
|
||||||
|
|
||||||
|
Изначально подразумевалось, что приложения бекенд и фронтенд располагаются на разных доменах. Когда мы перенесли всё в
|
||||||
|
один домен, то куки и сессии из бекенда и фронтенда будут пересекаться. Для исправления этого внесите следующие настройки
|
||||||
|
в конфигурацию backend приложения `backend/config/main.php`:
|
||||||
|
|
||||||
|
```php
|
||||||
|
'components' => [
|
||||||
|
'request' => [
|
||||||
|
'csrfParam' => '_backendCSRF',
|
||||||
|
'csrfCookie' => [
|
||||||
|
'httpOnly' => true,
|
||||||
|
'path' => '/admin',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'user' => [
|
||||||
|
'identityCookie' => [
|
||||||
|
'name' => '_backendIdentity',
|
||||||
|
'path' => '/admin',
|
||||||
|
'httpOnly' => true,
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'session' => [
|
||||||
|
'name' => 'BACKENDSESSID',
|
||||||
|
'cookieParams' => [
|
||||||
|
'path' => '/admin',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user