У меня проблема на сайте Magento, над которым я работаю с редиректом 302. Что-то на сайте / теме вызывает перенаправление 302 по ссылке site.com/blog на домашнюю страницу, если у меня отключен модуль блога темы по умолчанию. Я пытаюсь получить этот URL для использования в качестве домашней страницы установки WordPress, но этот нативный модуль захватил его, и я не могу найти, где это происходит.
Если модуль включен, он в порядке и использует ссылку, но когда вы его выключаете, он перенаправляет. Я предполагаю, что это является родным для модуля, но по какой-то причине я не могу изменить это поведение и полностью отключить его (в идеале было бы хорошо, если бы я получил ошибку 404, когда модуль блога был выключен, потому что, по крайней мере, я знаю что URL доступен для меня, чтобы использовать).
С выключенным модулем я зашел на страницу в Chrome и прослушал вкладку «Сеть» инструментов разработчика. 302 редирект действительно появляется.
HTTP/1.1 302 Moved Temporarily
Date: Sat, 08 Aug 2015 00:01:45 GMT
Server: Apache
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
X-Frame-Options: SAMEORIGIN
Set-Cookie: frontend=80cfd66318165451fa4aa2915d139404; expires=Sat, 08-Aug-2015 02:01:45 GMT; path=/; domain=www.example.com; httponly
Location: http://www.example.com/
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8
GET /blog HTTP/1.1
Host: www.example.com
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8
Cookie: _gaost=.rk=; _gaos=.gaos_r=(direct).mc=(no)|(no)|(no).gaos_k=.pc=2; __ar_v4=M5J3LQW4MFADRNVY2ORZM7%3A20150610%3A4%7CN3LC2IOELZFOVNMCXKXXWV%3A20150610%3A4%7C5DCLBJIK7FDQFMXMCEDBUU%3A20150610%3A4; frontend=80cfd66318165451fa4aa2915d139404; __utma=176154288.93372352.1432329461.1435683793.1435792914.29; __utmz=176154288.1432329461.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __atuvc=3%7C26%2C3%7C27%2C17%7C28; adminhtml=d90076dbca44dcccdd004d86240b9683; adminhtml=d90076dbca44dcccdd004d86240b9683; frontend=80cfd66318165451fa4aa2915d139404
Я знаю, что 302 могут быть вызваны файлами .htaccess, поэтому я SSHed на сервер и использовал find
найти все файлы .htaccess на сервере (и обнаружил 17), но ни у одного из них не было никакого кода перенаправления, который мог бы повлиять на эту страницу.
Есть ли способ определить, где / почему / как происходит перенаправление 302? Нет документации по этому вопросу для этого модуля / плагина, я искал везде и даже связывался с разработчиком, но не получил ответа.
Спасибо за вашу помощь.
Я выяснил проблему.
Это было связано с «маршрутизацией» в Magento. Есть функция addRoute, и я выполнил поиск на сервере, ища addRoute, и нашел кучу файлов, в которых это происходило.
Затем я смог найти папку, в которой весь модуль блога выполнял перенаправление, и мне пришлось просто пройти логику модуля и отключить некоторые функции в его классе.
Magento — отличная платформа с огромным количеством опций и возможностей, но перенаправления 302 — это то, что происходит практически на каждом сайте электронной коммерции / блога.
Там много вопросов о 302 redirection in Magento
,
Иногда вы устанавливаете 301 перенаправление в System > Configuration > General > Web > Url Options
но он показывает 302, иногда вы получаете оповещения об огромном количестве страниц, таких как example.com/blog/post/1234
с перенаправлением 302 и т. д.
Magento автоматически устанавливает 302 перенаправления для URL, таких как:
(Источник: https://www.mavenecommerce.com/blog/302-redirects-in-magento/)
Так что попробуйте пойти в System > Configuration > General > Web > Url Options
изменить (если возможно) напрямую из опции Magento. Вероятно, это можно изменить прямо оттуда.