Yii2 как убрать web из адреса URL

Yii2 как убрать web из адреса URL

Коллеги всем привет.

В сегодняшней не большой статье я вам покажу как можно убрать из адреса web в yii2. Сразу после установки вашего сайта он доступен по адресу yii2/web, потому что именно в директории web находится вся публичная часть вашего сайта. Если мы просто перейдем в корень сайта то мы увидим список корневой папки. Давайте сделаем так, чтобы главная страница сайта была доступна при обращении к доменному имени, без добавления директории web.

 

yii2_delete_web

Ну такой вариант нам точно не подходит.


 

Первое чтобы сделаем, это перейдем в конфигурационный файл сайта под названием web.php и кое-что в нем поправим.

1. Найдите в этом файле параметр под названием urlManager, он у вас будет по умолчанию закомментирован. Нам же нужно наоборот его раскомментировать.

'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => false,
    'rules' => [
    ],
],

yii2_delete_web

 

2. Найдите в этом же файле параметр под названием request, и нам нужно в него добавить:

 'baseUrl'=> '',

yii2_delete_web

Все, с конфигурационным файлом мы закончили.


 

Следующим шагов нам нужно создать два файла .htaccess. Этот файл отвечает за управления самого веб сервера apache или nginx.

Первый файл .htaccess нам нужно создать самой директории web, и добавляем в него:

RewriteEngine On RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php

yii2_delete_web

 

Второй файл .htaccess нам нужно создать в корне сайта, и добавляем в него:

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on

RewriteCond %{REQUEST_URI} !^/(web)
RewriteRule ^assets/(.*)$ /web/assets/$1 [L]
RewriteRule ^css/(.*)$ web/css/$1 [L]
RewriteRule ^js/(.*)$ web/js/$1 [L]
RewriteRule ^images/(.*)$ web/images/$1 [L]
RewriteRule (.*) /web/$1

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /web/index.php

yii2_delete_web


 

Вот и все, теперь когда вы будите заходить на сайт, в адресной строке уже не будет web.

yii2_delete_web


 

Всем спасибо, я надеюсь что вам моя статья хоть чем-то помогла.

ПОХОЖИЕ СТАТЬИ

JQuery - Галерея изображений с увеличением при наведении
JQuery - Галерея изображений с увеличением при наведении
WEB
Читать далее
Zoom blowup.js - Плагин увеличения изображения с увеличительным стеклом
Zoom blowup.js - Плагин увеличения изображения с увеличительным стеклом
WEB
Читать далее
jQuery Zoom - Стеклянный эффект лупы изображения
jQuery Zoom - Стеклянный эффект лупы изображения
WEB
Читать далее