Помощник
|
Редирект в ModX через .htaccess коряво работает |
kstnews
|
Сообщение
#1
|
||
|
|
||
|
|||
x64 |
15.10.2017, 12:20;
Ответить: x64
Сообщение
#2
|
|
В Modx сие не работало Сие не зависит от движка. Это директива веб-сервера, который и передаёт ЯПу управление. Значит, не в том месте разместили. принципиально, "page1.html" без слэша впереди Именно. Особенности Апача, ведущий слэш не участвует. RewriteEngine On Без этого МодРеврайт не работает. После его включения можно RewriteRule/RewriteCond юзать. |
|
|
kstnews
|
Сообщение
#3
|
|
x64, thanks - понял, что "шел в нужном направлении".
Просто вчера боролся с css (который вчера, как выяснилось, "не знал, да еще и забыл", хотя казалось...) И когда чего-то не понимаешь, "ищешь врагов" - в смысле, Modx. Оказалось, просто css. А с редиректом в Modx все немножко по-другому. Не так, как привык. (или я чего-то не понимаю, что вполне может быть). Вопрос. Была Joomla. Спринхост. Первые редиректы, помнится, сначала делал через админпанель на хостинге, и заметил, что там просто в конце (sorry за колхозную терминологию) .htaccess прописывается Redirect 301 old new, и все работало. Потом "завел себе" modx (хостинг другой) - и выяснилось, что не работает (и, насколько я понял, хостинг не причем). Сообщение отредактировал kstnews - 15.10.2017, 13:03 -------------------- |
|
|
mmkulikov |
15.10.2017, 14:36;
Ответить: mmkulikov
Сообщение
#4
|
|
в Joomla все спокойно решалось через редирект в самом конце: Как писали выше, цмс к апачу не относится. А главная ошибка - это располагать свои редиректы в конце Свои должны быть сразу за RewriteEngine On -------------------- VPS от 5€ |
|
|
x64 |
15.10.2017, 15:29;
Ответить: x64
Сообщение
#5
|
|
Первые редиректы, помнится, сначала делал через админпанель на хостинге Тут в деталях могу ошибаться, ибо долгое время на своём сервере сидел. Думаю, что установки через панель обрабатывают раньше пользовательских. Последовательность видится такой: 1. Глобальные конфиги веб-сервера. 2. Дополнительные конфиги (видимо, именно они и устанавливаются через панель). 3. .htaccess там просто в конце (sorry за колхозную терминологию) .htaccess прописывается Redirect 301 old new Зависит от хостинга. Настройка веб-сервера может быть довольно гибкой, посему, зависит от действий администраторов. Если они настроили, что из панели (которые, к слову, тоже различаются) изменения идут в .htaccess, то Вы можете с равным успехом сразу терзать этот файл. Но если изменения заносятся в конфиг веб-сервера, который обычно юзеру недоступен (если не свой сервер или vps/vds), то действовать надо через панель. это располагать свои редиректы в конце Солидарен. Очень часто юзеры пхают редиректы в конец .htaccess, после чего жалуются, что не работает. На самом деле, располагать внешние редиректы (которые отдаются браузеру) нужно как можно ближе к Код RewriteEngine On Если есть внутренний редирект (на уровне веб-сервера) с флагом L, то дальше конфиг не обрабатывается. Для примера: Код RewriteEngine On RewriteRule (.*) index.php?request=$1 [L,QSA] RewriteRule ^page1.html$ /page2.html [R=301,L] До строки №3 дело не доходит. В строке №2 внутренний редирект безусловно перебрасывает запрос на /index.php?request={путь-запроса}, после чего управление передаётся пыху. Но всё изменится, если поменять 2 и 3 местами. |
|
|
mmkulikov |
15.10.2017, 16:45;
Ответить: mmkulikov
Сообщение
#6
|
|
Если есть внутренний редирект (на уровне веб-сервера) с флагом L, то дальше конфиг не обрабатывается. Не совсем так. Флаг L только перезапускает обработку в этом месте(где сработало условие) с самого начала, но выполнив соответствующую подстановку. Из-за этого могут быть бесконечные циклы. Так что осторожней с условиями -------------------- VPS от 5€ |
|
|
x64 |
15.10.2017, 18:54;
Ответить: x64
Сообщение
#7
|
|
Флаг L только перезапускает обработку Встречный вопрос: как он её перезапускает? Если следует постоянный перезапуск, смысл в правилах? Постоянно же будут перезапуски. Правила сначала действуют для запрашиваемого подкаталога, потом уровнем выше и т. д. В подавляющем большинстве случаев L означает именно окончание разбора. |
|
|
mmkulikov |
15.10.2017, 20:34;
Ответить: mmkulikov
Сообщение
#8
|
|
Встречный вопрос: как он её перезапускает? Так работает апач Вот детально разжёвано об этом https://habrahabr.ru/company/sprinthost/blog/129560/ -------------------- VPS от 5€ |
|
|
kstnews
|
Сообщение
#9
|
|
Думаю, что установки через панель обрабатывают раньше пользовательских. Тут трудно мне что-то сказать. Если они настроили, что из панели (которые, к слову, тоже различаются) изменения идут в .htaccess, то Вы можете с равным успехом сразу терзать этот файл. Что я и начал когда-то делать, и на Joomla все это работало. А потом появился Modx. Сегодня специально зашел в Спринтхост, нашел окно Прененаправление: Развернуть/Свернуть
Сделал перенаправление - они опять, как и в былые времена прописали в конце .htaccess Код ### begin Sprinthost-redirects 15.10.2017 19:15 Redirect 301 /***/ http://***/ ### Sprinthost-redirects end На выходе получил переход на http://***/?q= Разместил Redirect 301 /***/ http://***/ сразу после Код RewriteEngine On RewriteBase / Аналогично. А вот Код RewriteRule ^page1.html$ /page2.html [R=301,L] в самом начале сработал сразу. Получается, это все-таки проблемы Modx.PS IMHO и практика. А флаг L у меня вызывает воспоминания пионерского детства с портретом Владимира Ильича, что к программированию мало относится, поэтому в дискуссию вступать не могу. PSS Sorry, что встреваю в дискуссию, но зашел на Хабрахабр и осенило, где ж он этот флаг стоит. Дело за малым - понять зачем он вообще нужен, но это уже не сегодня. Сообщение отредактировал kstnews - 15.10.2017, 21:13 -------------------- |
|
|
x64 |
15.10.2017, 21:12;
Ответить: x64
Сообщение
#10
|
|
|
Вот детально разжёвано об этом Чем указанное по ссылке противоречит моим словам? Тут трудно мне что-то сказать Сложно что-то возразить. Каждая панель может задействовать свой свод правил, инивервальное для всех высказать сложно. зашел в Спринтхост Это же хостер) У него своё видение настроек. это все-таки проблемы Modx Фифти-фифти. Да, движок может отдельные моменты обрабатывать несколько своеобразно. Но он физически не в состоянии вмешивать в работу веб-сервера до того, как получит управление. А флаг L у меня вызывает воспоминания пионерского детства с портретом Владимира Ильича L = Last. И даже в этом случае ранее подобного не было)
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Bropush - Твой бро в монетизации через Push-уведомления | 28 | bropush | 11187 | Вчера, 12:52 автор: bropush |
|
Через какой браузер и как можно найти в кэшэ браузера видео | 10 | Room | 1925 | 23.3.2024, 7:41 автор: Room |
|
Крауд-маркетинг который работает | Эффективные Ру-ссылки | 1 | Azyuka | 956 | 13.2.2024, 19:36 автор: tascha56 |
|
XMLSeo - поисковая выдача Яндекс, Wordstat, Google, Bing, DuckDuckGo через API | 0 | Malpertu36 | 1533 | 25.12.2023, 19:34 автор: Malpertu36 |
|
Продвижение сайта через краудинг с поддержкой Полный комплекс мер по продвижению сайта |
0 | alexey | 987 | 22.8.2023, 16:33 автор: alexey |
Текстовая версия | Сейчас: 28.3.2024, 12:59 |