Ошибка загадочная при вводе

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
float
Сообщения: 21
Зарегистрирован: 2016.06.16, 14:26

Ошибка загадочная при вводе

Сообщение float »

Есть простенькая табличка - Клиенты. И вот в определенный момент при редактировании клиента с определенным именем стала выдаваться ошибка 403 - причем даже не YII2, а стандартная. Имя на котором все ломается - Игорь, вернее даже набор букв "гор". Если забить этот набор в фамилию - аналогичная ошибка выскакивает.
Ошибка возникает также при поиске с таким набором букв.
Все модели - вьюхи стандартные (создал новые для тестирования), от бразуера не зависит, кеш чистил, клиенты с именем Игорь в базе есть - подскажите, куда копать?
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Ошибка загадочная при вводе

Сообщение skynin »

-- ошибка 403 - причем даже не YII2, а стандартная
то есть, 403 выдает веб сервер?
что он пишет в логах?

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

-- Если забить этот набор в фамилию - аналогичная ошибка выскакивает.
так что первый вопрос
403 выдает Yii или веб сервер (= "а стандартная")
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
float
Сообщения: 21
Зарегистрирован: 2016.06.16, 14:26

Re: Ошибка загадочная при вводе

Сообщение float »

Ну судя по всему - да, дает веб сервер.
В логах ничего - идет запрос вида get (или post) и заканчивается 403 ошибкой.
Вот скриншот
Изображение

Собственно с самим сервером ничего не делали, обновлений не накатывали, еще 2 недели назад (судя по дате заведения пред клиента с именем Игорь и невозможностью сейчас его отредактировать) все работало. При этом ломается даже поиск - каким образом при поиске может формироваться какой то ресурс - непонятно.
unknownby
Сообщения: 749
Зарегистрирован: 2019.11.05, 16:34
Контактная информация:

Re: Ошибка загадочная при вводе

Сообщение unknownby »

А что это у вас там в "web/index.php" такого интересного, что он хочет туда зайти?
Разве не должно переходить по ссылке "mysite/clients/index?ClientSearch......."
У вас же где-то должен быть контроллер с вьюхами, где отображается грид, в котором ищете информацию. Почему идёт в "web/index.php"
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Ошибка загадочная при вводе

Сообщение skynin »

-- Ну судя по всему - да, дает веб сервер.
дебаг режим бы включить, у Yii
в сам index.php тоже можно логирование добавить, временно, и писать с помощью syslog, запрос то дошел до него, или веб сервер его рубанул сразу?
если веб сервер - какие правила стоят? авторизация на уровне вебсервера есть или нет? ...? ...?
я например обычно админки закрываю и авторизацией на уровне веб сервера.

-- Вот скриншот
а можно остальную, правую часть увидеть?
не у всех есть талант телепатии, "дочитать"

-- и заканчивается 403 ошибкой.
в логах веб сервера?
А можно строчку эту посмотреть?

-- еще 2 недели назад
вчера был здоров - а сегодня умер.

Мало ли что было две недели назад :)

-- Собственно с самим сервером ничего не делали, обновлений не накатывали
Ну тогда у вас все работает как и две недели назад :)

Не работает? Значит - делали.
Гадать что кто и почему делал бесперспективно. Сам баг в настройках или коде мог быть давно, просто "активировали".
Как и мантра - мы ничего не делали, вчера работало, а сегодня - чудо - тоже малополезна.

-- При этом ломается даже поиск
нет никакого поиска.
Есть 403 ошибка, непонятной природы, информацию о которой вы усиленно не хотите показывать :)
Наверное исправить эту ошибку важнее отвечающим чем вам.
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
float
Сообщения: 21
Зарегистрирован: 2016.06.16, 14:26

Re: Ошибка загадочная при вводе

Сообщение float »

Вот полный урл (ну насколько поместился :)
Изображение

Авторизация на уровне YII2.

Про чудеса понимаю и сам не верю. Но голову уже сломал куда рыть :oops:

Вечером доберусь до сервера - сниму логи по максимуму, что то на демо базе не додумался включить дебаг режим :(

Ну и что мне в принципе взрывает мозг - это то что от вводимых данных здесь зависит поведение.

Код стандартный - т.е. для это таблицы я сформировал путем gii модель, контроллер, вьюхи (все новое) - и на них спотыкается..
unknownby
Сообщения: 749
Зарегистрирован: 2019.11.05, 16:34
Контактная информация:

Re: Ошибка загадочная при вводе

Сообщение unknownby »

float писал(а): 2020.09.01, 13:37 Про чудеса понимаю и сам не верю. Но голову уже сломал куда рыть :oops:
Никто не трогал .htaccess ?
И все равно, URL странный
Почему web/index.php ? Или это у вас просто сайт demo со страницей index
Включите красивые url

Код: Выделить всё

'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'rules' => [
                '' => 'site/index',
                '<action>' => 'site/<action>',
            ],
        ],
site - дефолтный контроллер
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Ошибка загадочная при вводе

Сообщение skynin »

-- Вот полный урл (ну насколько поместился
вобщем лучше скопируйте :)
Возможно - длинный шибко получается.

-- Ну и что мне в принципе взрывает мозг - это то что от вводимых данных здесь зависит поведение.
так оно в большинстве случаев так - одни данные - все работает, другие - не все работает :)

набор букв "гор" - это скорее всего совпадение. просто одна из обнаруженных комбинаций
может и "ййй" тоже вызвает такое же поведение, вы ж не искали все комбинации букв которые приводят к такому поведению :)
так что на набор букв - не отвлекайтесь.
а
есть некий урл, сохраните себе, который вызывает 403

и все, забыли что там за буквы, прощупываем каждый этап
веб сервер вызвал index.php?
а что передал - записать в лог! еще до вызова Yii

конфиги Yii - правильно вызываются?
записать в лог

в контроллере - тоже записать через beforeAction afterAction

Конечно, если знать проект - то эти точки быстрее найдутся, где проконтролировать.
Но мне отсюда - ничего не видать в проекте :)
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
float
Сообщения: 21
Зарегистрирован: 2016.06.16, 14:26

Re: Ошибка загадочная при вводе

Сообщение float »

Полный урл - /demo/web/client/index?ClientSearch[cl_family]=&ClientSearch[cl_name]=гор&ClientSearch[cl_ot]=&ClientSearch[cl_tel]=&ClientSearch[cl_tel2]=

Пробовал следующее
- включил url manager
- включил debug panel - на странице с ошибкой она ожидаемо не появляется.
- попробовал записать в контроллере beforAction - ничего не пишется.

В логах веб-сервера обнаружилось забавные строчки -
- - [01/Sep/2020:07:41:04 -0400] "GET /demo/web/index.php?ClientSearch%5Bcl_family%5D=&ClientSearch%5Bcl_name%5D=%D0%B3%D0%BE%D1%80&r=client HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36"
- - [01/Sep/2020:07:41:14 -0400] "GET /demo/web/index.php?ClientSearch%5Bcl_family%5D=&ClientSearch%5Bcl_name%5D=%D0%B3%D0%BE&r=client HTTP/1.1" 302 - "-" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36"


Т.е. если я правильно понимаю, YII2 формирует вот такой вот урл, а именно Apache его почему то заворачивает в ошибку. Теперь бы понять как дальше копать.
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Ошибка загадочная при вводе

Сообщение skynin »

-- теперь бы понять как дальше копать.
туда и копать.
Апач не то делает?
Значит копать в его конфиги.

-- YII2 формирует вот такой вот урл
Копать в https://www.yiiframework.com/doc/guide/ ... me-routing

web/index.php?ClientSearch
это странный для Yii путь.
либо /index.php?r=post/view&id=100
либо красивый /post/view?id=100
можно настроить и /post/view/100
или /посмотреть/пост/100
как угодно вобщем можно. просто обычно хватает канонического:
модуль(если есть) / контроллер / action ? именованные параметры

да, и 302 забавно - кто у вас редирекит то - апач или Yii?

вобщем
1. либо в конфигах Апача у вас пошаманили
2. либо с URL manager не разобравшись поигрались

Опять же, понятия не имею ни о проекте, ни о компетенции, поэтому только надежные советы

Запустите рядом чистый Yii проект, на том же шаблоне что основной.
Работает? значит Апач свое дело делает. Сравните его работающие настройки с теми что у вас.
Если одинаковы - смотрите настройки URL manager
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
unknownby
Сообщения: 749
Зарегистрирован: 2019.11.05, 16:34
Контактная информация:

Re: Ошибка загадочная при вводе

Сообщение unknownby »

float писал(а): 2020.09.02, 16:32 Полный урл - /demo/web/client/index?ClientSearch[cl_family]=&ClientSearch[cl_name]=гор&ClientSearch[cl_ot]=&ClientSearch[cl_tel]=&ClientSearch[cl_tel2]=
При правильных настройках, должен быть URL
/demo/client/index?ClientSearch[cl_family]=&ClientSearch[cl_name]=гор&ClientSearch[cl_ot]=&ClientSearch[cl_tel]=&ClientSearch[cl_tel2]=

Посмотрите файл htaccess
Писал об этом выше
По вашему урлу у вас идёт в модуль web, там ищет контроллер client и отображает экшн index.
А что-то мне подсказывает, что у вас всё намного проще.

Да и скриншот у вас не с таким урлом. У вас там
/demo/web/index?ClientSearch[cl_family]=&ClientSearch[cl_name]=гор&ClientSearch[cl_ot]=&ClientSearch[cl_tel]=&ClientSearch[cl_tel2]=
Это означает, что вы не сделали красивые урлы, чтобы вместо demo/web/index.php было demo/index
Ответить