@EVOSandru6

Папка web в basic — как убрать, если не UrlManager и не .htaccess?

Добрый день,

Такая проблема,

Есть проект, когда он лежал на серваке, у него был один .htaccess в корне:

AddDefaultCharset utf-8
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteCond %{HTTPS} != on
RewriteRule ^/?(.*) https://%poddomen.domen.com/$1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php


Проект полностью рабочий на хостинге.

Скачал на локалку, с такими настройками ничего не заработало, попробовал как в документации,

.htaccess в корне сайта:

AddDefaultCharset utf-8
<IfModule mod_rewrite.c>
   Options +FollowSymlinks
   RewriteEngine On
</IfModule>

<IfModule mod_rewrite.c>
   RewriteCond %{REQUEST_URI} ^/.*
   RewriteRule ^(.*)$ web/$1 [L]

   RewriteCond %{REQUEST_URI} !^/web/
   RewriteCond %{REQUEST_FILENAME} !-f [OR]
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule ^.*$ web/index.php
</IfModule>


И еще .htaccess в папке web:

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


Сайт открылся. Прошел по данным доступа через авторизацию, попал в модуль адимина, а там в адресной строке - url:

domen.loc/web/admin

Откуда этот web мог взяться? Если его удаляю с адресной строки и жму ENTER, то опять попадаю на такой же url с web.

В этой админке есть различные ссылки с domen.loc/admin/controller подобными адресами. Но перейдя по ним, все время попадаю в :

domen.loc/web/admin

В config/web.php:

...
'urlManager' => [
			'showScriptName' => false,
			'enablePrettyUrl' => true,
			'rules' => [
                '<controller>/<action>' => '<controller>/<action>',
				'<module:admin>/<action:\w+>'   =>  '<module>/default/<action>',
				'lk' => 'user/default/cabinet',
				'profile' => 'user/default/profile',
				'files' => 'user/default/files',
				'files/view' => '/user/default/view_file'
			]
		],
		...


Подскажите пожалуйста, мастера - по какой причине у меня может быть данная проблема?
  • Вопрос задан
  • 107 просмотров
Решения вопроса 2
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Есть входной скрипт index.php он лежит в папке web, вот от туда и взялось.
Ответ написан
Комментировать
qonand
@qonand
Software Engineer
укажите в конфигурации своего urlManager параметр baseUrl => '' . Должно помочь...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы