Blast Опубликовано 27.10.2024 в 19:37 Поделиться Опубликовано 27.10.2024 в 19:37 прислал заказчик инфу, что при переходе на сайт по ссылке с Яндекс.товаров сайт отдает 403 ошибку. общение с хостером ничего не дало, начал выяснять в чем тут дело. в url добавляется utm метка utm_referrer=https://yandex.ru/products/search?text=текст на сервак естественно приходит перекодированный вариант вида https://domain/path-to-product?utm_referrer=https%3A%2F%2Fyandex.ru%2Fproducts%2Fsearch%3Ftext%3D%D1%82%D0%B5%D0%BA%D1%81%D1%82 методом проб выяснил что если заменить %3F на что-то другое, то сайт вполне работает. похоже, что обновление безопасности апача запретило использовать hex-перекодированный символ "?" в "%3F" в url. наткнулся на такое обсуждениеhttps://stackoverflow.com/questions/78729429/403-forbidden-when-url-contains-get-with-encoded-question-mark-unsafeallow3f заменил в .htaccess строку RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] на RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,UnsafeAllow3F] работать то работает, но интересно насколько это безопасно и есть ли другие решения, учитывая что и php'шный urlencode и js'овский encodeURIComponent по-прежнему кодируют этот символ в %3F 2 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Tom Опубликовано 28.10.2024 в 04:29 Поделиться Опубликовано 28.10.2024 в 04:29 В схожей ситуации , данное решение предложил сам хостер. Сразу после RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) добавить RewriteRule ^([^?]*) index.php?_route_=$1 [B,L,QSA,UnsafeAllow3F] Ну и как вариант от меня (так же нужно проверять). # Преобразование UTM-меток от Яндекс.Товаров RewriteCond %{QUERY_STRING} utm_referrer=https%3A%2F%2Fyandex\.ru%2Fproducts(.*) RewriteRule ^(.*)$ $1?utm_source=yandex&utm_medium=products [R=301,L] Применяет UnsafeAllow3F только для трафика с Яндекс. Сохраняет UTM-метки в исходном виде Не создает дополнительных редиректов Минимально влияет на существующую логику работы сайта 3 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ник112 Опубликовано 9.04.2025 в 04:58 Поделиться Опубликовано 9.04.2025 в 04:58 (изменено) Добрый день. тоже проблема такая возникла, когда поменял на RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,UnsafeAllow3F] ссылки с Яндекса заработали, но перестал работать вкладка фурнитура к этой двери в карточки товара, выдает уведомление Подвердите действия на сайте. Какая причина подскажите пожайлуста Изменено 9.04.2025 в 05:03 пользователем Ник112 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ник112 Опубликовано 9.04.2025 в 09:31 Поделиться Опубликовано 9.04.2025 в 09:31 Решено #RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,BCTLS] #RewriteRule ^([^?]*) index.php?_route_=$1 [UnsafeAllow3F,L,QSA] RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,UnsafeAllow3F] 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Blast Опубликовано 9.04.2025 в 15:14 Автор Поделиться Опубликовано 9.04.2025 в 15:14 В 09.04.2025 в 12:31, Ник112 сказал: Решено #RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,BCTLS] #RewriteRule ^([^?]*) index.php?_route_=$1 [UnsafeAllow3F,L,QSA] RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA,UnsafeAllow3F] от того, что вы закомментировали 2 строки, а в 3-ей написали также как в первый раз и также, как в первом сообщении, ровным счетом ничего не изменилось. просто у вас возможно какой-то кэш сбросился и всё заработало 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ник112 Опубликовано 11.04.2025 в 22:06 Поделиться Опубликовано 11.04.2025 в 22:06 После обращения в хостинг норм, или в кэше непонятно, сейчас скачки непонятные 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.