<?xml version='1.0' encoding='UTF-8'?>
<rss version='2.0'>
	<channel>
		<title>cotonti.com : Как подружить ЧПУ и Redirect?</title>
		<link>https://www.cotonti.com</link>
		<description>Последние сообщения в теме</description>
		<generator>Cotonti</generator>
		<language>en</language>
		<pubDate>Fri, 17 Apr 2026 18:22:07 -0000</pubDate>

		<item>
			<title>Roffun</title>
			<description><![CDATA[<blockquote class="fp"><a href="https://www.cotonti.com/forums?m=posts&amp;q=9011&amp;d=1#45023">#45023</a> <strong>Дмитрий:</strong>
<p>Да и понять хочется, почему в варианте с ЧПУ не работает и как это исправить. Для личного саморазвития))</p>
</blockquote>

<p>Если есть желание понять суть проблемы, нужно обратиться к документации и принципу работы URL в Cotonti. Если речь идёт о ЧПУ значит подразумевается обработка URL. В Cotonti они модифицируются в двух местах:</p>

<ul><li>UrlEditor - плагин для обработки URL</li>
	<li>Серверный файл (htaccess или nginx зависит от настроек)</li>
</ul><p>Если плагин включен и прописаны правила, это значит что движок будет отдавать содержимое по новым правилам, но сервер об этом ничего не знает, поэтому правила нужно добавить еще и в серверный файл. Для существующих адресов этого достаточно, но если речь идет о страницах которых не существует (в вашем случае движок подразумевает что хотите несуществующую страницу 404 переадресовать на новый адрес). Поэтому сырой URL (<span style="color:rgb(119,119,119);font-family:'Open Sans', 'Helvetica Neue', Helvetica, sans-serif;font-size:15px;text-align:justify;">/index.php?e=page&amp;c=manual&amp;al=doc1</span>) работает, ведь страница существует, а предыдущая ЧПУ не редиректится, потому что её как бы и не было, это просто ЧПУ редирект был. Если бы страница с которой редирект существовала, то всё сработало бы, а так приоритет отдаётся 404, отсюда и проблема с редиректом.</p>

<p>Решение вопроса находится над ситуацией, все вышеперечисленные варианты это лишь костыли в данном случае. Для понимания процесса нужно посмотреть документацию:  <a href="https://www.cotonti.com/docs/ext/extensions/ext_hooks">Что такое Хуки?</a></p>

<p>В подразделе 2.1. <a href="https://www.cotonti.com/docs/ext/extensions/ext_hooks#ch2.1">Основные хуки</a> можно прочитать, что:</p>

<blockquote>
<p style="font-size:16px;background-color:rgb(255,255,255);line-height:1.4em;text-indent:2em;font-family:'PT Serif', 'Times New Roman', Times, serif;text-align:justify;">Некоторые хуки в системе вызываются практически всегда и строго в определенном порядке относительно друг друга:</p>

<ul style="margin:.6em 1em 1em 2em;font-size:16px;background-color:rgb(255,255,255);line-height:1.4;font-family:'PT Serif', 'Times New Roman', Times, serif;text-align:justify;"><li style="font-size:16px;"><samp>input</samp> — самая первая точка расширения при выполнении скрипта. В текущей точке, несмотря на доступность основных данных (таких как конфигурация, структура, список расширений, данные пользователя) система еще не полностью инициализирована. Поэтому используйте этот хук осмотрительно и если надо переопределить некоторые системные данные на начальном этапе;</li>
</ul></blockquote>

<p>Как видно из описания, хук input вызывается на этапе инициализации, поэтому его можно переопределить только в этой точке. А плагин UrlEditor как раз в этом месте <a href="https://github.com/Cotonti/Cotonti/blob/master/plugins/urleditor/urleditor.input.php#L84" rel="nofollow">вызывает функцию <span class="pl-en" style="color:rgb(111,66,193);font-family:'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;font-size:12px;white-space:pre;background-color:rgb(255,255,255);">cot_apply_rwr</span></a><span style="color:rgb(36,41,46);font-family:'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;font-size:12px;white-space:pre;background-color:rgb(255,255,255);"><a href="https://github.com/Cotonti/Cotonti/blob/master/plugins/urleditor/urleditor.input.php#L84" rel="nofollow">()</a></span> в которой происходит дальнейшая логика ЧПУ.</p>

<p><strong>Вывод</strong>: чтобы максимально влиять на ЧПУ, в том числа на удалённые/перемещённые URL, нужно делать это программно на уровне хука. Чтобы не писать дополнительный плагин, можно воспользоваться <a href="https://github.com/esclkm/r301" rel="nofollow">r301</a> от esclkm. После установки редирект можно добавлять из админки.</p>

<p>p.s. Если протокол сайта https, нужно изменить его и в файле i<a href="https://github.com/esclkm/r301/blob/master/r301.input.php#L36" rel="nofollow">nput.php</a> (плагин давно не обновлялся).</p>
]]></description>
			<pubDate>вт, 28 июл 2020 15:01:01 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45025]]></link>
		</item>
		<item>
			<title>Edward</title>
			<description><![CDATA[<p>Ставите этот редирект выше стандартных?</p>

<blockquote>
<p><strong style="font-size:15px;color:rgb(119,119,119);font-family:'Open Sans', 'Helvetica Neue', Helvetica, sans-serif;text-align:justify;">Redirect 301 /instructions /manual/doc1</strong></p>
</blockquote>

<p>У меня nginx, но работают такие редиректы. Начало файла, до стандарнтых редиректов:</p>

<pre class="brush:php;gutter:false;toolbar:false;">
rewrite "^/zashchita-po-ugolovnym-delam" /voennyj-advokat-po-ugolovnym-delam permanent;</pre>

<p> </p>
]]></description>
			<pubDate>пн, 27 июл 2020 19:28:56 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45024]]></link>
		</item>
		<item>
			<title>Дмитрий</title>
			<description><![CDATA[<blockquote class="fp"><a href="https://www.cotonti.com/forums?m=posts&amp;q=9011&amp;d=1#45022">#45022</a> <strong>kushelbek: </strong>
<p>у меня вот так работают норм:</p>

<pre class="brush:php;gutter:false;toolbar:false;">
Redirect 301 /portfolio/intensiv/Лэндинг-для-Школы-выездной-интесив https://domain.ru/index.php?e=page&amp;c=web&amp;id=79</pre>

<p>Т.е куда редериктим пишем с полным адресом(http\https )</p>
</blockquote>

<p>Ну так и у меня работает) В принципе, функцию свою выполняет, и меня даже устраивает и такой вариант. Но хотелось бы чтобы все было красиво)</p>

<p>Да и понять хочется, почему в варианте с ЧПУ не работает и как это исправить. Для личного саморазвития))</p>
]]></description>
			<pubDate>пн, 27 июл 2020 18:55:27 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45023]]></link>
		</item>
		<item>
			<title>kushelbek</title>
			<description><![CDATA[<blockquote class="fp"><a href="https://www.cotonti.com/forums?m=posts&amp;q=9011&amp;d=1#45014">#45014</a> <strong>Дмитрий: </strong>
<p>Помогите пожалуйста настроить правильную работу Редиректа с ЧПУ ссылками.</p>

<p>У меня проблема вот в чем. После переноса страницы в другую категорию, понадобилось настроить обычный редирект в htaccess. Однако при использовании ЧПУ ссылок редирект работает некорректно.</p>

<p>Т.е. при использовании такой конструкции:</p>

<blockquote>
<p><strong>Redirect 301 /instructions /manual/doc1</strong></p>
</blockquote>

<p>Я получаю ссылку вида <strong>мой_сайт/manual/doc1?rwr=instructions</strong> и соотвестственно ошибку 404.</p>

<p>Но если использовать не преобразованную ссылку, например:</p>

<blockquote>
<p>Redirect 301 /instructions /index.php?e=page&amp;c=manual&amp;al=doc1</p>
</blockquote>

<p>То редирект работает нормально. Однако хотелось бы иметь привычный "красивый" вид ссылки. Можно ли этого добится?</p>
</blockquote>

<p>у меня вот так работают норм:</p>

<pre class="brush:php;gutter:false;toolbar:false;">
Redirect 301 /portfolio/intensiv/Лэндинг-для-Школы-выездной-интесив https://domain.ru/index.php?e=page&amp;c=web&amp;id=79</pre>

<p>Т.е куда редериктим пишем с полным адресом(http\https )</p>
]]></description>
			<pubDate>пн, 27 июл 2020 12:28:05 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45022]]></link>
		</item>
		<item>
			<title>Дмитрий</title>
			<description><![CDATA[<p>А зачем пробел убирать? Может я чего-то не понимаю, но это же стандартная конструкция параметра Redirect - <strong>Redirect 301 &lt;старый URL&gt; &lt;новый URL&gt;</strong>. И она всегда работает, за исключением этого случая с ЧПУ ссылками на Cotonti.</p>

<p>Ну а если я убираю там пробел, то получаю на выходе адрес <strong>мой_сайт/instructions/index.php?e=page&amp;c=manual&amp;al=doc1</strong> и ошибку<strong> "Сайт выполнил переадресацию слишком много раз. ERR_TOO_MANY_REDIRECTS."</strong> Для работы параметра <strong>Redirect</strong> как-раз и необходимо 2 адреса, разделенных пробелом.</p>

<p>Если я не очень понятно обьяснил, что мне надо, то попробую подробнее. У меня была системная страница с алиасом <strong>instructions</strong> и она была перенесена в категорию<strong> manual</strong>, а её алиас сменен на<strong> doc1.</strong> Т.е. в данный момент мне нужно перенаправить пользователя со старого адреса - <strong>мой_сайт/instructions </strong>на новый адрес - <strong>мой_сайт/manual/doc1</strong>. И эта конструкция не работает, если использовать в качестве нового адреса ЧПУ ссылку и отлично работает если использовать прямую, без ЧПУ преобразования. </p>
]]></description>
			<pubDate>сб, 25 июл 2020 19:43:56 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45019]]></link>
		</item>
		<item>
			<title>Дмитрий</title>
			<description><![CDATA[<blockquote class="fp"><a href="https://www.cotonti.com/forums?m=posts&amp;q=9011&amp;d=1#45016">#45016</a> <strong>jCube Group: </strong>
<p>пребел уберите.</p>
</blockquote>

<p>Что убрать? Не понял</p>
]]></description>
			<pubDate>сб, 25 июл 2020 17:30:33 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45017]]></link>
		</item>
		<item>
			<title>jCube Group</title>
			<description><![CDATA[<p>пребел уберите.</p>
]]></description>
			<pubDate>сб, 25 июл 2020 13:56:48 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45016]]></link>
		</item>
		<item>
			<title>Дмитрий</title>
			<description><![CDATA[<p>Помогите пожалуйста настроить правильную работу Редиректа с ЧПУ ссылками.</p>

<p>У меня проблема вот в чем. После переноса страницы в другую категорию, понадобилось настроить обычный редирект в htaccess. Однако при использовании ЧПУ ссылок редирект работает некорректно.</p>

<p>Т.е. при использовании такой конструкции:</p>

<blockquote>
<p><strong>Redirect 301 /instructions /manual/doc1</strong></p>
</blockquote>

<p>Я получаю ссылку вида <strong>мой_сайт/manual/doc1?rwr=instructions</strong> и соотвестственно ошибку 404.</p>

<p>Но если использовать не преобразованную ссылку, например:</p>

<blockquote>
<p>Redirect 301 /instructions /index.php?e=page&amp;c=manual&amp;al=doc1</p>
</blockquote>

<p>То редирект работает нормально. Однако хотелось бы иметь привычный "красивый" вид ссылки. Можно ли этого добится?</p>
]]></description>
			<pubDate>сб, 25 июл 2020 09:04:33 -0000</pubDate>
			<link><![CDATA[https://www.cotonti.com/ru/forums?m=posts&q=9011&d=0#post45014]]></link>
		</item>
	</channel>
</rss>