Что такое рерайтинг?
Из всех видов создания уникального текста для Интернета именно рерайтинг считается самым простым, хотя он и требует определённых навыков.
Что такое рерайтинг текстов и кому он нужен
Рерайтинг – это чужой материал, переписанный другими словами. Зачем это нужно заказчику? Рерайтинг – отличный способ создать уникальную статью на основе качественной статьи, уже опубликованной в Сети. Также рерайтинг – хорошая возможность сделать текст более лёгким для чтения и восприятия.
Процесс трансформации исходника называется рерайтингом, а результат работы – рерайтом. Рерайтер – человек, который переписывает уникальные тексты, написанные другими, получая сходный по содержанию текст, но написанный иначе.
Чем отличается рерайтинг от копирайтинга? Что такое «глубокий рерайт»?
Рерайтинг, в отличие от копирайтинга, – это написание нового уникального текста на основе уже готовой статьи. В зависимости от глубины рерайтинга, у новой статьи может быть разная степень схожести с изначальным образцом. Очень часто статью для рерайтинга предоставляет сам заказчик, что ещё более упрощает дело.
Заказчик может потребовать глубокого рерайта конкретного текста. Что это означает? Глубокий рерайт статьи заключается не в простой замене слов на синонимы, а в полном её переписывании своими словами, замене смысловых блоков, изменении стиля изложения и полной перефразировке предложений.
Способы и приёмы написания рерайт-статьи
Опытный и грамотный рерайтер всегда работает с несколькими текстами. Согласитесь, что статья, составленная из трёх-четырёх текстов, будет намного более информативной и, что немаловажно, уникальной.
Не обманывайтесь кажущейся простотой рерайтинга – для успешной работы рерайтер нуждается в богатом словарном запасе.
Техника рерайтинга использует три основных приёма:
1. Неглубокий рерайтинг текста, или замена слов синонимами. Иногда такой рерайтинг называют синонимизацией. Синонимизация – это метод, основанный на подборе синонимов к большинству слов в предложениях исходного текста. Из всех видов рерайта такие тексты являются самыми недорогими.
2. Замена последовательности слов, самих предложений и абзацев. Это уже настоящий рерайтинг, позволяющий создавать по-настоящему интересные и уникальные статьи на основе исходного текста.
3. Перефразирование текста с сохранением основной мысли статьи. В этом случае мы используем технику «изложения», то есть внимательно изучаем исходный текст, а затем пересказываем его своими словами, дополняя или отбрасывая лишнее.
Отдельно хотелось бы сказать о таком нюансе, как рерайтинг прямой речи в статье. Как сделать рерайт текста, в котором есть кусочек интервью или цитаты, ведь при прямом изложении уникальность сразу же устремится к нулю? В таком случае прямая речь трансформируется в косвенную, в результате чего получается уникальная новая статья.
Рерайт как способ заработка для начинающего копирайтера
Начинающие копирайтеры часто думают, что рерайтинг – это очень легко, буквально дело десяти минут. Но это ошибочное мнение. Глубокий рерайтинг – это тщательная, кропотливая работа, которая отнимает столько же, а то и больше, времени, чем написание уникальных авторских текстов.
В процессе написания текста важно соблюдать основное правило: собственные домыслы и искажения фактов в рерайте недопустимы! Заказ по «своей» тематике можно смело брать в работу. Если же в тексте рассматриваются вопросы, в которых Вы ничего не смыслите, то от такого заказа лучше отказаться.
Работа рерайтера хороша тем, что мы узнаём что-то увлекательное и новое каждый день. Рерайтинг – прекрасный способ расширения кругозора и усвоения новой информации. К недостаткам рерайтинга можно отнести то, что оплата за рерайт обычно гораздо ниже, чем за копирайт (авторские статьи).
Для новичков-фрилансеров рерайтинг – не только отличный способ заработка, но и прекрасное упражнение, выполняя которое, можно научиться выделять из текста основное и поиграть словами. Если копирайтер профессионально делает рерайт статьи, то и копирайтинг для него не станет сложной задачей.
что это такое и как научиться зарабатывать на нем
Делаем вашу страницу интересной и стимулируем подписчиков почаще заглядывать к вам на страницу или на сайт за покупками
Получи нашу книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».
Подпишись на рассылку и получи книгу в подарок!
Рерайтинг – это профессиональная деятельность, которая строится на создании уникальных текстов на основе существующих статей.
Больше видео на нашем канале — изучайте интернет-маркетинг с SEMANTICA
Синонимайзинг и глубокий рерайтинг: что это такое
От того, какую цель преследует заказчик, будет зависеть специфика работы специалиста.
Поверхностное переписывание, которое в профессиональной среде называют синонимайзингом, предполагает изменение средств выражения при полном сохранении содержания.
Допустим, вы ведете локальный новостной ресурс. Новую информацию вы берете с более крупных порталов. Чтобы не попасть под действие закона об авторском праве, весь контент, который будет у вас на сайте, должен быть уникален. Чтобы добиться этого, нужно пересказать существующие тексты своими словами, не отступая от фактов. Этим и займется нанятый вами автор.
Если же хотите не просто получить уникальный текст, а изменить структуру или направление статьи, выделить одни подробности и опустить другие, лучшим вариантом будет глубокий рерайт. Считается более сложным, поэтому стоит дороже.
При глубоком рерайте очень важно не уйти в копирайтинг. Хороший автор знает, что между этими двумя направлениями деятельность есть тонкая, но существенная граница, переходить которую не следует. В первом случае нельзя:
- Пользоваться разными источниками. Работа идет с одной, конкретной статьей, которую предоставил клиент.
- Вводить в новую статью собственную точку зрения. Задача – пересказать чужие мысли, а не донести свои.
SEO-рерайтинг: что это
Суть этого направления такая же, что и у двух предыдущих. Главное отличие – результатом работы будет не просто уникальный, но и оптимизированный текст. Клиент, который заказывает такую статью, желает с её помощью вывести страницу своего сайта в топ – первую десятку интернет-ресурсов, открывающуюся в поисковике.
Поэтому готовая статья должна соответствовать требованиям поисковых систем:
- Наличие в тексте ключевых запросов – слов и словосочетаний, с помощью которых потенциальный покупатель будет искать в сети то, что ему нужно.
- Отсутствие переспама – одинаковые слова не должны повторять в соседних предложениям, между ними должно быть минимум 500 символов.
- Заголовки, подзаголовки, списки, деление на абзацы – единое текстовое полотно не устроит как читателей, так и роботов.
Заработок на рерайтинге: как научиться получать деньги за уникальные тексты
Человека, который планирует заняться переложением готовых текстов, имеет ряд преимуществ перед тем, кто хочет писать статьи сам:
- Не нужно подбирать и анализировать информацию, проверять ее достоверность.
- Можно взяться за любую тему, глубоко вникать в нее не обязательно. Копирайтеры обычно специализируются на определенной тематике: бизнес, юриспруденция, медицина, транспорт. Они выбирают то, в чем лучше разбираются. Специалист по рерайтингу без труда сможет работать с любыми текстами, что значительно упрощает поиск заказов.
Первостепенная задача новичка – научиться пересказывать. Для этого можно брать любые тексты из интернета, читать их, закрывать вкладку и пытаться объяснить то, что вы только что прочитали своими словами.
Вторым пунктом будет умение отстраниться от собственных мыслей и эмоций. Предположим, что вы делайте рерайт новости о разводе Анджелины Джоли и Бреда Питта. Вы можете всем сердцем сопереживать одной стороне и ненавидеть другую, но в текст ваши чувства просочиться не должны. Если заказчик предоставил вам материал, в котором симпатии на стороне женщины, новый текст должен быть выполнен в том же ключе.
Кроме того, от хорошего рерайтера требуется:
- Грамотность.
- Умение объяснить сложное просто.
- Логичность и полнота изложения.
Цена рерайтинга текста рассчитывается исходя из стоимости, назначенной за 1000 знаков.
Что такое рерайтинг? | Агентство копирайтинга – АПТекст
Rewriting – дословно означает переписывание. Это процесс создания нового уникального текста на базе уже существующего. Рерайтинг – одна из веток копирайтинга наряду с неймингом, брендингом, сторителлингом. Продуктом рерайтинга является рерайт (rewritе).
Рерайтинг – это первая ступень в послужном списке копирайтера и, как правило, начало его портфолио. Рерайт часто заказывают клиенты, поскольку его стоимость меньше, чем плата за написание новой уникальной статьи. В то же время качественный рерайт мало чем отличается от авторского текста.
Виды рерайта
1. поверхностный – переделывание текста слово за словом, предложение за предложением с помощью определенных приемов так, чтобы уникальность полученного материала стремилась к 90-100%. Недостаток такой работы заключается в том, что постоянный возврат к исходному тексту занимает большое количество времени.
2. глубокий – написание текста с той же основной мыслью, что и в оригинале, однако другими фразами и с другим построением материала. Помните школьные изложения? Это именно тот случай, только теперь за них вы получаете не оценки, а деньги.
Глубокий рерайт порой сложно отличить от авторского текста. Иногда качественный рерайт называют пиратством, ведь по сути вы (бездоказательно!) занимаетесь компиляцией чужого текста.
Техники рерайтинга
1. Использование синонимов везде, где только можноВ этом вам поможет список полезных программ. Но не думайте, что синонимайзеры и онлайн-переводчики сделают за вас всю работу. Вы потратите довольно много времени на корректировку текста, прибегая к их помощи. Зато текст от этого выиграет. Вряд ли у начинающего «писателя» богатый лексический запас.
Пример. Ночь оторвала и пушистый хвост у Бегемота, содрала с него шерсть и расшвыряла ее клочья по болотам. Тот, кто был котом, потешавшим князя тьмы, теперь оказался худеньким юношей, демоном-пажом, лучшим шутом, какой существовал когда-либо в мире. Теперь притих и он и летел беззвучно, подставив свое молодое лицо под свет, льющийся от луны.
Рерайт. Ночь избавила Бегемота от его мохнатого хвоста и стянула с него весь волосяной покров, разбросав куски шерсти по болотам. Худой юноша, демон-паж, самый прекрасный клоун в мире, которым услаждался правитель тьмы – тот, кем был кот. Он парил молча и тихо, позволяя лунному свету озарять его лицо.
2. Замена глаголов существительными
Многие глаголы имеют отглагольные существительные или другие части речи близкие по значению, использование которых разнообразит ваш текст.
Пример. Ночь оторвала и пушистый хвост у Бегемота, содрала с него шерсть и расшвыряла ее клочья по болотам.
Рерайт. Мохнатый хвост Бегемота и его шерсть были оторваны ночью и разбросаны по болотам.
3. Превращение прямой речи в косвенную
Рерайт не предполагает прямое использование цитат и чужих высказываний. Но если очень хочется (или очень надо), можно косвенно передать главную мысль автора цитаты.
Пример. − Ваш роман прочитали, − заговорил Воланд, поворачиваясь к Мастеру, − и сказали только одно, что он, к сожалению, не окончен. Так вот, мне хотелось показать вам вашего героя. Около двух тысяч лет сидит он на этой площадке и спит, но когда приходит полная луна, как видите, его терзает бессонница.
Рерайт. Воланд сказал, что роман Мастера был прочитан, но, к сожалению, не закончен. И ему хотелось показать мастеру главного героя, который приблизительно две тысячи лет сидит на данной площадке и постоянно спит. Но во время полнолуния его мучает бессонница.
4. Изменение структуры предложения, абзаца или всего текста
Разбивка на более короткие фразы или, наоборот, слияние их в одно длинное предложение не только придаст ритм, динамичность вашему рерайту, но также поможет приблизить уникальность нового текста к 100%.
Пример. Ночь оторвала и пушистый хвост у Бегемота, содрала с него шерсть и расшвыряла ее клочья по болотам. Тот, кто был котом, потешавшим князя тьмы, теперь оказался худеньким юношей, демоном-пажом, лучшим шутом, какой существовал когда-либо в мире. Теперь притих и он и летел беззвучно, подставив свое молодое лицо под свет, льющийся от луны.
Рерайт. Ночь избавила Бегемота от его мохнатого хвоста. Она также сорвала с него весь волосяной покров и разбросала по болотам. Кот, которым услаждался повелитель тьмы, стал молодым худощавым парнем. Бегемотом был демон-паж и самый лучший клоун в мире.
5. Использование страдательного залога
Популярность использования этого приема стоит на втором месте после синонимов. Главред, конечно, не одобрит ваш текст, но перестановка сказуемых поможет при создании поверхностного рерайта. Если же по вашему техническому заданию в тексте нужно проверять не только уникальность, но также и уровень информационного стиля, воспользуйтесь глубоким рерайтом.
Пример. Ночь оторвала и пушистый хвост у Бегемота, содрала с него шерсть и расшвыряла ее клочья по болотам.
Рерайт. Мохнатый хвост Бегемота как и его шерсть были оторваны ночью и разбросаны по болотам.
6. Внедрение авторских вставок
Такой творческий подход к рерайтингу относится к глубокому рерайту текста. Количество и вид стилистических вкраплений – по целесообразности и желанию копирайтера.
Пример. Так говорила Маргарита, идя с мастером по направлению к вечному их дому, и мастеру казалось, что слова Маргариты струятся так же, как струился и шептал оставленный позади ручей, и память мастера, беспокойная, исколотая иглами память стала потухать. Кто-то отпускал на свободу мастера, как сам он только что отпустил им созданного героя. Этот герой ушел в бездну, ушел безвозвратно, прощенный в ночь на воскресенье сын короля-звездочета, жестокий пятый прокуратор Иудеи, всадник Понтий Пилат.
Рерайт. Идя с мастером к нерушимому их дому, Маргарита говорила так, что ее возлюбленному мерещилось, будто ее слова льются подобно ручью. Начиная с этого момента память мастера начала угасать. Мастер был отпущен на свободу так же, как он сам отпустил своего придуманного героя. Всадник Понтий Пилат ушел навеки в пропасть. Пятый прокуратор Иудеи, сын короля-звездочета был прощен в ночь на воскресенье.
7. Изменение местоимений
Местоимения – части речи, указывающие на предметы, их признаки и количество, при этом не называя самих предметов. Местоимения склоняются по падежам, имеют род и число, которые можно менять безболезненно для текста.
Пример. Бежишь за хлебом.
Рерайт. Бегите за хлебом.
8. Изменение цифр
Технические тексты чаще всего сопровождаются цифровыми данными, которые нельзя выбросить, но оставить в таком же виде, что и в оригинале, тоже нельзя.
Пример. Вес этого сооружения 1 тысяча килограмм (или 1000 кг).
Рерайт. Вес данного предмета составляет 1 т.
При создании рерайта не старайтесь использовать только одну из перечисленных здесь техник. Ведь только с помощью комбинирования всех приемов рерайтинга можно достичь высокого результата и написать качественный текст.
Что такое рерайтинг: 8 советов
Все хорошо знают, что популярность и посещаемость сайта тем выше, чем более высокие позиции занимает сайт в поисковой выдаче. Ну а каждый владелец сайта знает, что уважают поисковые машины в большей степени качественный и уникальный контент, проверить который можно через программу advego plagiatus – http://int-net-partner.ru/poleznye-programmy-i-servisy/advego-plagiatus.html
Наполнение сайта вебмастер делает самостоятельно или заказывает статьи у копирайтеров. Но искусством создавать собственные тексты владеют немногие, а вот другой способ писать контент вполне доступен каждому. Речь идет о рерайтинге. Многие с недоверием относятся к такому методу создания текстов, но из-за увеличивающегося количества информации в интернете создавать тексты с новой вложенной идеей сложно.
Рерайтинг — способ создания текста путем переформулировки исходного. Главное правило здесь — чтобы новый текст не потерял смысл, который задан в исходном варианте. Кроме ручного рерайта, когда человек садится и перепечатывает прочитанное ранее своими словами, есть еще и автоматический, который создается посредством специальных сервисов или программ. Принцип действия таких программ сводится к замене слов их синонимами. Процесс достаточно прост, но на выходе чаще всего получается откровенная «лобода», и без доработки вручную такой контент вряд ли найдет применение. Поэтому дабы избавить себя от двойной работы, лучше сразу видоизменять текст самостоятельно. Работа становится проще, если человек владеет богатым словарным запасом и умело строит предложения.
Некоторые особенности написания рерайта:
1. Рерайт — все-таки творческая работа. Прочитав исходник, следует его проанализировать, мысленно разделить на части и представить результат после переделки текста. Порой, чтобы быть «в теме», нужно прочитать несколько источников по заданной теме.
2. Если в первоначальном тексте есть незнакомые слова — термины и аббревиатуры, то нужно узнать, что они обозначают — Википедия здесь очень пригодится. Без этого сложно написать качественный глубокий рерайт.
3. Главная задача рерайта — написание текста с высоким процентом уникальности, с заданным объемом (если статья пишется на заказ) и определенной стилистики. Для проверки уникальности можно воспользоваться более удобным для себя способом. Наиболее популярные программы сегодня — Advego Plagіatus и Etxt Антиплагиат и они просто устанавливаются. Для получения более точного результата используют «глубокую проверку». В случае если в тексте большое количество символов, рекомендуется проверять его частями в 2–2,5 тыс. символов и не единожды. Для тех, кто пишет заказные тексты, заказчик указывает нужную уникальность, но, как правило, она не должна быть меньше 90%. После первой проверки программа выделяет цветом части текста с копиями других — можно переформулировать и тем самым повысить процент уникальности.
4. Также можно убирать из исходного текста несколько выражений, добавив взамен других с тем же смыслом, не в ущерб будущей статье. Здесь важно не перестараться, так как все факты должны быть достоверными и не противоречить здравому смыслу.
5. Что касается ленивой работы с текстом, то даже не думайте использовать метод синонимизации — нужно менять структуру предложений, перефразировать, не меняя смысла. Например, предложение «Психологи считают, что истоки зависти у детей начинаются в привычке взрослых сравнивать их малыша с другими детьми» может звучать следующим образом. «Сравнение с другими детками — Машей, Петей, только наносят вред — многие психологи утверждают, что именно это и порождает у маленьких чувство зависти». Как видно, можно добавлять слова, разбивать предложение на несколько или, наоборот, соединять в одно. Только при этом сложные предложения должны хорошо читаться. Здесь же следует отметить необходимость изменения глаголов страдательного залога. Легко поменять все глаголы по типу «сайт должен быть оптимизирован веб-мастером» (вместо первоначального варианта «веб-мастер должен оптимизировать сайт»), но такие предложения, особенно большие, читаются труднее и восприятие таких оборотов сложнее.
Повысить уникальность поможет использование сокращений или, наоборот, их расшифровка. Например, т — тонны, сантиметры — см. При этом цифры можно писать словами, если в исходном тексте они прописаны знаками, а символы вроде % или С прописывать словами.
6. Перестановка абзацев тоже вполне допустима. Но только в том случае, если они не имеют смысловой связки.
7. Когда в исходнике используют перечисления в списках, то последовательность этих предложений.
8. Идеальная орфография и пунктуация — как свидетельство того, что пользователь имеет дело с грамотным человеком или, по крайней мере, с трудолюбивым и ответственным, который не поленился и хорошенько вычитал и проверил контент.
Глубокий качественный рерайтинг как способ наполнения сайта контентом имеет ряд преимуществ — быстрота написания статей, страховка от предъявления санкций поисковиками, так как синонимизация легко выявляется. В случае заказа статей — более низкая стоимость по сравнению с заказом копирайта.
Источник: http://int-net-partner.ru/
Как сделать рерайтинг — блог Allwrite
Как сделать рерайтинг текста и не скатиться в искусство переформулирования, можно ли заменять слова синонимами и обязательно ли видеть сайт заказчика перед тем, как сделать рерайтинг текста быстро – читаем, усваиваем, применяем на практике.
Неопытные копирайтеры и желающие сэкономить заказчики думают, что рерайтинг – это уникализация текста. А ответ на вопрос – как сделать рерайтинг – элементарен: нужно всего лишь банально переставлять слова местами и заменять слова / конструкции на синонимы. И только! Как бы не так.
В корне неверное представление о рерайтинге сводит на нет качество текстов. Банальная замена слов на синонимы – это способ сделать из текста набор словосочетаний, связанных обилием страдательных залогов и лишенных индивидуальности, лишенных уникальности в плане стилистики и отличными от того, что имеется на сайте заказчика.
Рерайтинг – процесс создания нового уникального из уже существующего текста, работа с его структурой, стилистикой, приведение к тому виду, который имеют все материалы на сайте.
Бонусы для заказчика, или Почему нужно знать, как научиться рерайтингу
Пока есть сайты – есть контент, в том числе и тексты. Пока есть запрос на текстовый контент – копирайтер не останется без работы. Смотрим, почему и когда неглупые заказчики предпочитают заказывать рерайтинг.
- Более низкая ставка, чем на копирайтинг – это возможность значительно уменьшить стоимость всего заказа.
- Меньшее количество правок. Если источник для рерайтинга выбирает заказчик, он понимает, что дает тексты, которые устраивают его по содержанию в техническом плане. Копирайтер при этом сделает меньше технических ошибок при подготовке текста, не будет искать информацию на других, возможно, не совсем авторитетных источниках. Как итог – хороший текст за разумную стоимость. Актуально для сложных тематик вроде медицины, юриспруденции, строительства и так далее.
- Меньшие сроки выполнения. Автору не нужно искать источники в интернете, задавать вопросы заказчику. Достаточно открыть текст для рерайтинга, сайт клиента и написать уникальный материал.
Как научиться писать тексты:
5 простых наблюдений по искусству рерайтинга
1.
Смотрите на контент сайта клиентаЭто важно, поскольку уникализированный текст не должен отличаться по стилистике (в идеале, кончено) с текстами на сайте клиента. Если весь контент – это материалы в официально-деловом стиле, то и рерайт должен быть сжатым, лаконичным, довольно сухим. Даже если текст оригинала – ироничная история с лихим сюжетом. Изложение материала в другом стиле даст некий процент уникальности.
2. Работайте со структурой
В нынешних реалиях неправильно делать текст рерайта полотном слов, даже если в оригинале так оно и есть. Тут может быть 3 варианта:
Вариант 1 – в ТЗ указано полностью сохранить структуру оригинала. Тогда слушаем заказчика.
Вариант 2 – в ТЗ указано сделать рерайтинг по конкретной структуре, которую прописал клиент или сео-специалист. В этом случае следуем указаниям.
Вариант 3 – в ТЗ не указано ничего. Тогда ничто вам не мешает сделать из оригинала текст с отличной структурой, раздробив полотно на смысловые блоки, добавив подзаголовки, поменяв блоки местами.
Как это сделать: выписать все факты, которые есть в оригинале текста, например, по абзацам. На основе этих фактов сделать свое изложение. В итоге поменяется структура, порядок изложения, а общий смысл (основа) сохранится.
И такой ход тоже даст процент уникальности, даже если вы еще новичок и только ищете, как научиться делать хороший рерайтинг текста.
3. Представьте, что вам нужно сделать изложение словами заказчика
Выбрав стилистику и определившись со структурой, приступайте к написанию текста «словами заказчика». Словами заказчика = своими же словами. Если вы профессиональный копирайтер, то уже подстроились под стиль и пожелания клиента.
4. Разумно (!) используйте принципы машинного рерайтинга
На наш взгляд, это актуально только при выполнении первых трех пунктов. И это, кстати, первое, что применяют те, кто не знает, как научиться рерайтингу с нуля. Приемы машинного копирайтинга, которые при уместном использовании не испортят текст:
- Вставки новых слов в конструкции. Многие сервисы проверки текстов ищут определенное словосочетание и подсвечивают его как неуникальное. Вставка подходящих по смыслу и уместных (без воды!) слов разбивает эту последовательность и делает части уникальными.
- Замена шаблонных фраз, клише. Проблема в том, что очень многие копирайтеры грешат всем надоевшими шаблонами типа «широкий ассортимент», «демократичные цены», «высочайшее качество», «большой выбор товаров в каталоге», «индивидуальный подход к каждому клиенту». Копирайтеры грешат, заказчики не видят в этом ничего плохого (и не должны, ведь они заказчики, а не спецы в копирайтинге). Ваша задача как автора – найти этим избитым словечкам адекватные эквиваленты. То есть позаботиться о читателе.
- Замена слов, задающих тематический спектр. Если текст о стиральных машинах, например, то это слово будет использоваться в тексте десятки раз. В том числе, это плохо для сео-продвижения. А ведь у «стиральных машин» есть эквиваленты, например, «она», «техника», «стиралка», «машинка», «установка для стирки» и так далее.
Внимание! Тут мы не имеем ввиду бездумную замену на сомнительные синонимы всего, чего угодно, например, «слюнявчик – устройство для аккуратного кормления малыша» или «конвейер – помощник» и т.д.
- Цифры вместо числительных и наоборот. Никто не запрещает заменить слово «сотня» на 100, «в девяностых годах» на 90-х, а «1,5 ч.л» на «полторы чайные ложки». Тут следует помнить о копирайтерской смекалке, когда очевидные вещи можно заменить другими формулировками, например, вместо «горбуша запекается 10-20 минут» – «горбуша запекается в среднем около 15 минут».
- Списки для разбивки текста. Прием тесно связан со структурой, однако даже если структуры и подзаголовков как таковых нет, никто не запрещает перечисления, инструкцию, преимущества и другие сгруппированные по смыслу конструкции переписывать в виде списка, чтобы разбить неуникальные части.
5. 100% уникальность – не панацея
Если, конечно, об этом не просит заказчик. Но даже в этом случае можно договориться. Во многих технических тематиках (медицина, грузоперевозки, экономика и так далее) есть специфическая терминология, которая не поддается уникализации. Мы никак не можем заменить название закона или указа, болезнь или препарат, марку погрузчика. В этом случае позволить себе 70-80% уникальности – значит только улучшить качество текста. 100% уникальность в сложных тематиках чревата полной потерей смысла и адекватности изложения.
что лучше и в чем отличия?
Большая и умная книга по Insta-постам
То, что нужно компаниям, личным брендам и копирайтерам
Значение терминов “рерайтинг” и “копирайтинг”
Текстов в интернете масса, и их разновидностей тоже: продающие, рекламные, информационные, PR-тексты – немудрено и запутаться. Но есть две категории, на которые можно поделить все статьи по типу их создания: копирайтинг и рерайтинг.
Людям не очень посвященным эти слова кажутся синонимами. Но так ли это на самом деле?
Копирайтинг – это калька с английского copywriting, сложного слова, состоящего из двух простых: copy – рукопись, и write – писать, записывать. То есть буквально оно означает «написать текст».
И пусть вас не смущает сходство со словом «копирование», здесь оно абсолютно случайно. По сути копирайтинг – это создание чего-то абсолютно нового.
Очень важное примечание: слова “копирайтинг” и “копирайт” не имеют между собой вообще ничего общего.
Те, кто называют копирайтинг – копирайтом, просто нарушают нормы языка. Это все равно что путать, скажем, эффектные и эффективные решения.
Рерайтинг – понятие, также заимствованное из английского. Rewriting буквально переводится как переписывание или изменение с помощью текста. Смысловое его значение заключается в переработке и новом изложении уже существующего материала.
С терминологией мы немного разобрались, но сам-то вопрос о том, что лучше: рерайтинг или копирайтинг, остался. Теперь самое время разобраться и с ним. Чтобы на него ответить, нам придется подробнее изучить термины.
Рерайтинг или “просто скажи по-другому”Чаще всего рерайтингом занимаются начинающие авторы. Самые дешевые заказы на биржах подразумевают создание именно такого продукта, даже если он и гордо именуется ими “копирайтингом”.
На самом деле, конечно, разница между копирайтингом и рерайтингом колоссальная. Так как же отличить одно от другого? Очень просто!
Рерайтинг не подразумевает никакого творчества. Это, скорее, техническая работа. Вы берете информацию из источника, комплектуете ее и излагаете в обновленном виде. Но даже и здесь есть подводные течения. Существует два типа рерайтинга:
- Поверхностный рерайтинг;
- Глубокий рерайтинг.
Пример поверхностного рерайтингаПоверхностный рерайтинг – один из самых низкопробных видов текстового контента. Его суть заключается в буквальном переписывании текста с заменой слов на синонимы.
Исходный текст:
Солнечный круг, небо вокруг – это рисунок мальчишки.
Переработанный текст после поверхностного рерайтинга:
Кольцеобразный центр нашей системы, окруженный атмосферой, изображен на листке бумаги юнцом.
Звучит ужасно, не правда ли? И это ещё не самый худший случай.
Очень часто заказчики настолько стараются сэкономить, что вместо живых авторов используют программы – синонимайзеры, которые методом случайного выбора (читай «тыка») меняют каждое слово в предложении на синоним без сохранения смысла.
Глубокий рерайтинг – статья, содержащая в себе информацию из нескольких источников. Да, вы можете даже сделать статью интересней и лучше по сравнению с оригиналом, но помните, что …
Даже если информация берется из нескольких источников, она все же переписывается своими словами, не более. Это все равно плагиат, пусть и ненаказуемый.
Разница в применении информации: в случае с глубоким рерайтингом собранную информацию просто переписывают, а в случае с копирайтингом берут лишь идеи и факты, но не структуру или словарную конструкцию источников.
Вернемся к глубокому рерайтингу. Такой контент более востребован. Его суть – тщательное изучение информации и изложение его в новом интересном виде. Есть ряд текстов, написать которые можно только в виде рерайта:
- рецепты;
- пресс-релизы;
- научные исследования;
- и даже карточки товаров.
Понять, что в этом случае перед вами: копирайтинг или глубокий рерайтинг – непросто, но все же можно.
Так, отлично помогает выявить спорные форматы текста сервис text.ru. Он проверяет именно смысловую составляющую и отлично отлавливает даже “замаскированный” рерайтинг.
Как сделать глубокий рерайтинг: 5 коротких советовПрофессионализм рерайтера должен быть во всем. Это как по Чехову: «В человеке все должно быть прекрасно…». И в создании глубоко рерайтинга тоже. Есть пять советов, следуя которым вы сможете стать на шаг ближе к качественному тексту:
- Берите информацию из большого количества источников, лучше из разнотипных: тексты, видео, пресса.
- Обязательно структурируйте текст и выстраивайте логическую цепочку фактов.
- Излагайте данные с нестандартной точки зрения.
- Читайте источники вдумчиво – не упускайте ни одного нюанса.
- Обязательно проверяйте текст по окончании и убирайте все лишнее.
Эти правила помогут вам не только сделать статью интересной, но и уникальной, что немаловажно. Теперь даже профессионалы не смогут понять, что перед ними: копирайтинг или рерайтинг с глубокой проработкой.
Подытожим: рерайтинг – это переписывание уже существующих материалов. Иногда очень профессиональное, но, все же переписывание.
Копирайтинг: сила авторского голосаУ нас есть большая отдельная статья о том, как сделать хороший рерайтинг текста. Изучите, если вам интересны конкретные процессы, фишки и правила.
В копирайтинге крайне важна ваша личная позиция. Просто собрать различную информацию и изложить в одном тексте здесь не получиться. Необходимо пропустить ее через себя, и уже после этого создать абсолютно новый продукт, которому нет аналогов в интернете.
Именно так создается элитный текстовый контент. Но дело не только в статусе.
Ключевым фактором для заказчика в выборе, платить ему за копирайтинг или рерайтинг, становится релевантность статьи.
Современные поисковые системы легко вычисляют переписанные тексты и убирают их в конец списка. Почему? Людям нравится читать что-то новое, а не уже где-то слышанное.
Сегодня в ТОП выходят именно авторские интересные информативные статьи, то есть копирайтинг. И именно они стоят хороших денег.
Для новичка главное – переступить через свой страх, выйти из раковины чужих мнений и создать первый свой собственный текст. Для этого отлично помогут наши курсы копирайтинга. Особенно курс по LSI-контенту.
Как отличить копирайтинг от рерайтинга: 5 стопроцентных признаковЧеловеку далекому от творчества, подчас сложно отличить авторский контент от переписанного собрата. Вот пять свойств, которые характерны только для копирайтинга.
- Уникальность. И не только техническая, которая измеряется шинглами, но и смысловая. Сервис text.ru, как уже говорилось, поможет вам вычленить даже самый завуалированный рерайт.
- Ярко выраженное личное отношение к написанному. Иногда с первых слов текста понятно, что автор думает о предмете статьи. Такое скопировать непросто.
- Особый стиль. Если у вас закрались сомнения: «А не рерайтер ли ты, часом?» – просмотрите портфолио. Для профессиональных копирайтеров свойственно единство стиля. Если вы видите, что все статьи как будто написаны разными людьми, то ваши сомнения не беспочвенны.
- Стремление к стопроцентной уникальности. Если автор боится процитировать классика или выдержку из статистики, дабы не увеличить процент плагиата, ему до настоящего копирайтера далеко.
- Простота слога. Писать свое проще, нежели излагать чужое.
Эти правила необходимо знать не только заказчикам, но и начинающим авторам. Если все же вы сомневаетесь, что пишете: рерайтинг или копирайтинг – проанализируйте свои работы в соответствии с этим перечнем.
Так что лучше: копирайтинг или рерайтинг?Владимир Даль в своем Толковом словаре определили понятие «лучший» как «добротный, годный, высший по качеству». Можно также добавить: приносящий наибольшую пользу. И под все эти определения подходит именно копирайтинг.
Да, глубокий рерайтинг, без сомнения, нужен. Но только в определенных сферах и в ограниченных количествах.
Например, при создании продающих описаний товаров, когда сказать что-то “очень особенно” уже не получается: в сотнях магазинов уже все сказано до вас.
Джозеф Шугерман в книге «Искусство создания рекламных посланий» так определяет копирайтера:
«Лучшие копирайтеры в мире – люди любознательные и много читающие, имеющие множество увлечений и разнообразных интересов, любящие путешествовать, совершенствовать свои способности в различных родах занятий, а порой, когда эти занятия им надоедают, увлеченно начинающие осваивать новые рубежи и добиваться в них совершенства.
Они жадны до новых знаний и опыта, им интересны другие люди».
Вот вам и ключ к созданию по-настоящему хорошего контента: станьте такими же, и красиво излагайте собственные мысли, а не переписывайте чужие. И читатель это оценит.
Добра вам!
[wpViralQuiz id=33876]
У вас есть текст подобного формата?
Бесплатный разбор качества текстов на форуме ForCop
Опечатка? Пожалуйста, выделите её и нажмите Ctrl+Enter. Спасибо!
Информационно-образовательный центр проекта “Панда-копирайтинг”
Рерайтинг цены — Веб Студия Top-7
Рерайтинг цены, сроки
Рерайтинг — что, где, почем? На услугу рерайтинг — цены и качество Вас порадуют: от 300 р. за 1000 знаков.
Предположим, что Вы нашли в Интернете интересную статью, которая как нельзя кстати подходит для Вашего ресурса. Но Вы не можете просто взять и скопировать его себе. Во-первых, это плагиат, а во-вторых, если Вы стремитесь к высоким позициям в выдаче, это может сильно навредить. Поисковая машина определит, что на Вашем сайте мало уникальности и вряд ли Вы окажетесь в первой десятке. Возможно даже, что Вас забанят.
Конечно, чтобы избежать проблем с первоисточником, Вы можете частично использовать необходимый материал, сделав при этом ссылку на него. Для чужого сайта это прекрасная реклама, а для Вас?…
Единственный легальный способ получить понравившийся текст – осмысленный, глубокий рерайтинг. Он полностью меняет облик текста, сохраняя при этом его суть. Часто создание сайтов и продвижение сайта в поисковых системах немыслимы без глубокого рерайта.
Рерайтинг (от англ. Rewrite – переписывать) иногда рассматривают как элемент копирайтинга. И если копирайтинг можно назвать одним словом «сочинение», то рерайтинг означает пересказ своими словами, или «изложение».
При рерайтинге материал заимствуют из источников, содержащих интересную и полезную информацию. Качественный рерайтинг должен выполняться вручную, без использования специальных программ по поиску синонимов и автоматического изменения текста.
Глубокий рерайтинг может представлять собой образование текста из нескольких фрагментов разных материалов. Это уже высший пилотаж рерайтинга: грамотно соединить несколько мыслей, сделав плавные переходы от одного куска текста к другому, и получить в результате качественный уникальный рерайт — не каждому копирайтеру под силу. Если рассматривать цены, то на рерайтинг цены в разы меньше, чем на копирайтинг. Это обусловлено тем, что рерайтеру требуется для работы меньше времени и нагрузка не такая большая. Но, несмотря ни на что, уникальность рерайта должна быть такой же высокой, как и у копирайта.
На первый взгляд можно подумать, что ничего сложного в рерайтинге нет, и осуществить его сможет даже неопытный человек. Это заблуждение.
Рерайтинг — не менее сложный и кропотливый труд, чем копирайтинг, а значит, должен выполняться профессиональным рерайтером. Помимо просто изложения, рерайтер обязан иметь богатый словарный запас и высокий уровень знаний языка. Опытный рерайтер способен «обмануть» не только поисковые машины, но даже реального автора текста. Возможно, после хорошего рерайтинга поисковики решат, что Вы первоисточник.
Основные приемы рерайтинга
1. Использование слов-синонимов.
2. Перемещение абзацев.
3. Перевод прямой речи в косвенную.
4. Удаление слов и словосочетаний, которые не несут смысловой нагрузки.
5. Изменение грамматического строя предложений.
6. Стилистические изменения.
Переписанный текст должен быть того же, или меньшего объема, чем в оригинальной статье. Смысловое содержание сохраняется.
Законы рерайтинга
В рерайте не должно быть:
• Вымыслов и домыслов рерайтера. Того, что нет в тексте источника
• Фактических ошибок
• Комментариев и личного мнения рерайтера
Очень внимательно стоит подходить к цитатам. Не желательно использовать прямую речь, оставлять ссылки на какие-либо источники информации.
В основном рерайтинг делается исключительно в рамках текста-исходника. Рерайтер перерабатывает и излагает материал своими словами, может изменить стиль, упростить некоторые сложные описания. Но все это, естественно, по желанию заказчика.
Получить стопроцентную уникальность рерайта сложно, если темой текста является какая-то узкая направленность, где присутствует много специфичной терминологии, перефразирование которой просто невозможно. Однако здесь все будет зависеть от задачи — если брать, к примеру, 5 слов подряд на проверку уникальности (длина шингла), она будет мала; но если взять 9 слов — можно добиться уникальности в 100%!
Рерайтинг статей как инструмент продвижения сайта
Однако чтобы Ваш переработанный тест «заработал» на продвижение в Интернет-пространстве, простого рерайтинга недостаточно. Мы имеем ввиду Seo-рерайтинг – изменение контента до уникального с включением в него ключевых слов. Это так называемая оптимизация текста. Поисковые роботы любят насыщенность контента ключевыми фразами, ценят его уникальность. Рерайт статей для раскрутки сайта применяют достаточно часто. И когда времени или средств не хватает, некоторые владельцы сайтов прибегают к искусственному рерайтингу: написанию текстов с помощью программного размножения качественной статьи. Однако такой рерайт приводит к загрязнению веб-пространства, такой метод раскрутки называют черным. Причем поисковые системы сейчас с легкостью могут распознать такой текст.
Поэтому мы советуем пользоваться только глубоким, качественным рерайтом.
1. Результатом рерайта может быть 100% уникальный текст. Новая информация на Вашем сайте означает, что он постоянно обновляется. Это ценят поисковики.
2. Размещайте как можно больше уникальных статей на своем ресурсе. Это большой плюс.
3. Рерайт каждой статьи желательно делать по конкретным ключевым запросам. В итоге каждая статья будет приносить свой вклад в увеличение потенциальной аудитории, так как повышается шанс выйти в топ по низкочастотным и среднечастотным запросам.
4. В своих новых уникальных статьях следует размещать текстовые ссылки на главную и второстепенную страницы сайта. Такие ссылки бесплатные и вечные, в отличие от покупных ссылок.
Вывод:
Рерайтинг текстов — необходимый элемент как раскрутки, так и поддержки сайтов. Обратившись к нам, Вы можете рассчитывать, что рерайтинг будет выполнен качественно и без использования каких-либо специальных программ.
Если возникли какие-либо вопросы, звоните нам по телефону 4-236-777, пишите электронные письма на [email protected], или приходите к нам в офис на Ереванскую, д.14.
Что значит перезапись?
Белла Додд:
Я наконец начал понимать, насколько я стал невежественным, как давно я читал что-либо, кроме партийной литературы. Я подумал о наших книжных полках, лишенных книг, опрошенных партией, как, когда писателя исключили из партии, его книги тоже ушли. Я думал о систематическом переписывании советской истории, переоценке, а в некоторых случаях и об исключении любого упоминания таких людей, как Троцкий. Я подумал о последовательных чистках.Внезапно я тоже захотел получить ответы на вопросы, которые задавал сенатор Хикенлупер, и хотел знать правду. Я обнаружил, что поражаюсь двуличности Коммунистической партии.
Роджер Бутл:
Кампания против присоединения к евро была очевидна, что мы должны быть на едином рынке, но за пределами евро они теперь переписывают историю , потому что это единственный аргумент, который у них есть.
Lorraine Loots:
Селективное внимание к деталям, временами моя студия настолько хаотична, что мне нужно освободить небольшое пространство на моем столе среди кучи бумаг, красок, растений и фигурок, чтобы я мог работать , но я бы потратил час на стирание и на переписывание буквы, которая на долю миллиметра меньше / больше / больше / меньше.
Джей Никсон:
Пересмотр конституции нашего штата с целью оправдания дискриминации противоречит нашим ценностям и наносит ущерб нашей экономике.
Ведьмак:
Как вечный фанат фэнтези, я с радостью расскажу историю «Ведьмак: Происхождение крови». С тех пор, как я впервые прочитал книги «Ведьмак», у меня в голове возник вопрос: каким на самом деле был эльфийский мир до катастрофического прибытия людей? я всегда был очарован взлетом и падением цивилизаций, тем, как наука, открытия и культура процветали прямо перед этим падением.Как огромные массивы знаний теряются навсегда за такое короткое время, что часто усугубляется колонизацией и переписыванием истории. Оставляя позади только фрагменты реальной истории цивилизации.
Переписывание — ключ к хорошему письму
Сегодня четверг, поэтому этот пост посвящен коммуникативным навыкам.
Четкое и четкое письмо — важный коммуникативный навык. Успешные люди могут излагать свои идеи в удобной для чтения форме. Я был благословлен.Мне всегда было легко писать. Мне это нравится. Помогло и изучение журналистики в колледже. Нет ничего лучше, чем критика профессора журналистики, которая поможет вам очистить свое письмо.
Однако это благословение может стать чем-то вроде проклятия. Поскольку мне легко писать, я иногда лениваюсь и плохо переписываю. Джеймс Миченер, великий писатель, однажды сказал: «Я не очень хороший писатель, но я отличный переписчик». Как говорит Джеймс Миченер, написавший более 40 книг и получивший Пулитцеровскую премию, перезапись — ключ к хорошему писательскому мастерству.Позвольте мне повторить это. Переписывание — ключ к хорошему письму.
Во вчерашнем посте я говорил о взаимосвязи между упорным трудом и выдающейся производительностью. Переписывание — это тяжелая работа по написанию. Любое письмо можно улучшить. Я переписывал все свои книги по крайней мере три или четыре раза. Тем не менее, я могу открыть любой из них наугад и найти лучший способ донести свою точку зрения.
Я не говорю, что нужно переписывать бесконечно — ровно столько, чтобы то, что вы написали, было лучше.Часто я попадаю в ловушку, когда начинаю предложения с ненужных слов или фраз. Я часто начинаю предложение со слов: «Для начала…» Я вырезаю их, когда переписываю. Это должно быть очевидно, когда я начинаю новую мысль.
«Сказать вам правду» или «Чтобы быть совершенно честным с вами» — также часто встречаются начинающие предложения; тем более в разговоре, но иногда и письменно. Эти фразы являются проблемой по двум причинам. 1) Они не нужны. Вы должны сказать правду.2) Они меня насторожили. Когда я слышу: «Чтобы быть с вами совершенно честным», я предполагаю, что то, что будет дальше, будет ложью.
Однако моя цель в этом посте — не научить вас переписывать, а заставить вас осознать, что переписывание — это ключ к хорошему письму. Прочтите, что вы написали. Если вы честны с собой, вы знаете, что можете быть более ясными и лаконичными. Затем сделайте то, что вам нужно, чтобы сделать написанное более четким и лаконичным.
Шон Фосетт — тренер по писательскому мастерству.Вы можете найти много отличной информации на его сайте www.writinghelp-central.com. Вот что он говорит о переписывании.
«Независимо от того, сколько я готовлюсь, я всегда нахожу, что могу улучшить первый набросок. Отчасти это связано с тем, что, когда я пишу эту первую версию, моя главная цель — изложить суть моих мыслей на бумаге. На этом этапе меня не беспокоят идеальные фразы, грамматика или логика. Моя основная задача с первого раза — убедиться, что я улавливаю важные слова и фразы, которые формируют основной смысл того, что я хочу передать.”
Шон также предлагает, чтобы один из хороших способов начать процесс переписывания — это прочитать то, что вы написали, вслух.
«Некоторые люди, которые не пробовали, могут смеяться, когда читают это, но это действительно работает. В любой момент в процессе разработки, но обязательно на заключительной стадии проекта, прочтите свой отчет или письмо самому себе «вслух». Удивительно, что улавливаешь, когда на самом деле «слышишь» свои слова, как если бы они были обращены к ним как к адресату. Я считаю, что это больше всего помогает мне уловить неудобные фразы и ненужное повторение слов или терминов.”
Я согласен с обоими пунктами Шона. Я всегда советую своим клиентам-консультантам: «Пишите быстро, а переписывайте медленно». Другими словами, быстро запишите свои мысли на бумагу или на экран, а затем потратьте много времени на уточнение написанного, чтобы убедиться, что оно передает именно то, что вы хотите сказать.
Во-вторых, я считаю, что чтение вслух того, что я написал, — отличный способ убедиться, что мой текст удобен для пользователя. Большинство людей, читающих то, что я пишу, читают вслух в уме.Другими словами, он должен хорошо звучать и хорошо выглядеть.
Здравый смысл здесь прост. Переписывание — ключ к хорошему письму. Перепишите все, что написали, один или два раза. Будет лучше, я гарантирую. Это касается как электронных писем, так и более длинных писем. Также следуйте совету Шона Фосетта — пишите быстро, переписывайте медленно; прочтите то, что вы написали, вслух, чтобы увидеть, как это «звучит для вашего читателя».
На сегодня все. Спасибо за чтение. Войдите на мой сайт www.BudBilanich.com для большего здравого смысла. Я не пишу регулярно в своем блоге www.CommonSenseGuy.com прямо сейчас, так как хочу сосредоточиться на этом. Тем не менее, он все еще в силе. Пожалуйста, не отменяйте RSS-канал, так как я буду иногда публиковать там сообщения. И вы все еще можете получить бесплатную электронную версию моей книги «4 секрета высокоэффективных организаций», посетив сайт www.CommonSenseGuy.com.
Увидимся в Интернете и на стенде Alex’s Lemonade Stand.
Бутон
PS: Говоря о Lemonade Stand Алекса, моя страница по сбору средств все еще открыта.Посетите сайт www.FirstGiving.com/TheCommonSenseGuy, чтобы прочитать вдохновляющую историю Алекса и сделать пожертвование, если сможете.
Как переписать свой первый черновик
Переписать
Первые черновики ваших любимых авторов обычно плохие. Однако то, что возвышает великих авторов, — это их дисциплина: агрессивно переписывать свои первые наброски, преследуя следующие цели:
- Убедительные доводы
- Четкое понимание
- Поддержание любопытства
- Резонанс — рассказ, аналогия и поэзия
Враг этих целей — ценить то, что вы изначально сказали и как вы это изначально сказали.
Когда вы впервые записываете идею, вы делаете это тем бессвязным образом, который сразу приходит в голову. Переписывание — это искусство находить в этом беспорядке кусочки головоломки и складывать их в правильном порядке.
Короче говоря, ваш первый набросок — извлечь новые идеи из вашего мозга. Ваш второй черновик — переписать эти идеи так, чтобы они нашли отклик.
При переписывании подумайте о том, чтобы послушать атмосферную музыку. Это помогает снизить вашу склонность к отвлечению: ровный бит без вокала погружает вас в транс.Вот мой плейлист Spotify.
Процесс написания вашего второго черновика — это процесс создания так, будто вы все время знали, что делаете.
—Нил Гейман
1. Быть понятым
Читатели не оценивают качество документальной литературы по ее элегантности или сложности. Вместо этого они оценивают:
Насколько сильны идеи x насколько интуитивно они их понимают
Вы мешаете этому пониманию, делая свое письмо нечетким.
Что такое ясность?
Четкое письмо начинается с ясного мышления:
- Что я на самом деле говорю?
- Что я должен здесь подчеркнуть?
- Как мне облегчить понимание этой мысли?
Мы рассмотрим два инструмента для этого:
- Простые предложения
- Примеры и контрпримеры
Все, что можно сказать, можно сказать четко.
—Людвиг Витгенштейн
Простые предложения
Напишите предложения, которым может следовать тринадцатилетний ребенок.
Если они могут понять, то поймут и все остальные, включая тех, кто просматривает.
Это не значит, что дети должны понимать детали. Скорее, дети должны уметь следовать логике ваших аргументов.
Вы уже делаете это интуитивно. Говоря с детьми, вы упрощаете:
- Вы используете простую формулировку.
- Вы используете меньше идей в предложении.
Мы собираемся использовать эти методы и в наших текстах.
Удалить абстрактную фразу
Вот предложение со сложной формулировкой:
«Препятствие, с которым сталкиваются медиа-организации, состоит в том, чтобы наметить экономически устойчивый курс через ландшафт товарной журналистики».
Давайте перепишем это предложение прямо:
«Новостным компаниям трудно оставаться в бизнесе, потому что любой, у кого есть блог или аккаунт в Twitter, может сообщить новости прямо сейчас».
Это , как вы разговариваете с тринадцатилетним подростком.Фактически, именно так вы должны постоянно со всеми разговаривать.
В исправленном примере я удалил абстрактные слова , такие как «нанесенный на карту» и «пейзаж», и свел концептуальную идею к конкретному примеру.
Убрав эти накладные расходы, можно выделить основную точку. Это наша цель.
Такое упрощение грамматики не ухудшит ваше письмо. Сложность вашего письма должна определяться силой его идей, а не их формулировкой.
Однако не опускайте ключевую информацию при упрощении. Это, например, было бы слишком редуцирующим:
«Новостные компании сегодня не очень хорошо себя чувствуют».
Это теряет смысл , почему у новостных компаний не все хорошо. Упрощайте предложения, не убирая нюансов.
Последний пример. Давайте удалим абстрактные слова и поговорим прямо:
Плохо параграф — «Незнание корпоративной динамики представляет собой постоянный источник боли для определенного типа операторов.Умный, но неопытный. Я бы порекомендовал вам избежать этой боли, понимая, как другие люди принимают решения в контексте, в котором они заинтересованы, и осознавая ограничения, в которых они действуют ».
Переписано — умный человек, не знающий, что происходит. Я рекомендую записать фреймворки, которые ваша команда использует для принятия важных решений. Затем, когда коллега предлагает идею, которая интуитивно не имеет для вас смысла, продумайте его идею, используя его собственные рамки.Работайте оттуда, чтобы развивать сочувствие и вести конструктивный диалог ».
Используйте меньше идей в предложении.
Второй метод упрощения общения с детьми — это использование меньшего количества идей в предложении. Сбор данных, описывающих структуру и функциональную способность кишечных бактерий человека в различных условиях, быстро растет. Постоянные усилия по дальнейшему описанию множества функций кишечных бактерий и механизмов, лежащих в основе их взаимодействия, позволят лучше понять роль кишечных бактерий. микробиом в здоровье и болезнях человека.
Давайте перепишем это для тринадцатилетнего ребенка:
«Существует множество исследований кишечных бактерий. Мы быстро узнаем, какую роль играют кишечные бактерии и как они взаимодействуют друг с другом. Исследователи хотят лучше понять, как эти бактерии могут повлиять на наше общее состояние здоровья ».
Предложения исходного абзаца содержали по две идеи каждое. Это проблема. Ваш мозг интерпретирует значение предложения после того, как прочитал его. Итак, чем длиннее предложение, тем больше деталей вы сразу держите в голове.Это еще больше усложняет понимание и без того сложных моментов.
Не обижайте своих читателей. Не прилагайте усилий, чтобы переваривать свои мысли.
Краткое содержание
Это нормально — заставлять читателей работать над раскрытием последствий того, что вы говорите. Но для них вообще неприемлемо изо всех сил пытаться понять, что вы говорите.
Если вы придерживаетесь простого языка, вы можете легко усложнять свои идеи.
Предоставьте примеры
Примеры — еще один инструмент для улучшения понимания читателями.
Примеры передают значение идеи, связывая ее с ситуациями реального мира. Они также помогают читателям усваивать концепции в контексте того, с чем они знакомы, что помогает их запоминать. Примеры — это то, что делает абстрактные идеи специфичными для .
Советы по предоставлению примеров:
- Предоставьте больше, чем просто примеры хорошо выполненной работы. Также приведите примеры до и после и контрпримеры, чтобы прояснить, что вы имеете в виду, а — не .Помогите читателям сориентироваться в спектре правильного и неправильного.
- Если вы сделаете свои примеры интересными и актуальными, читатели обратят на них больше внимания.
- Примеры с большим количеством движущихся частей следует преобразовать в диаграммы.
- Не тратьте время на примеры, если уверены, что ваша точка зрения очевидна.
Ясность приносит пользу писателю
После того, как вы переписали черновик для большей ясности, у вас остается лучшее понимание того, что вы пытаетесь сказать. Тогда вы можете сосредоточиться на том, чтобы сказать это более убедительно.
Краткое содержание
- Простой язык не ослабляет ваше письмо. Это укрепляет ваши позиции, помогая выделиться вашим основным идеям.
- Если вы представите, что пишете для тринадцатилетней аудитории, вы намеренно будете думать и писать более четко.
- Используйте простые формулировки, простые предложения и примеры до и после.
На самом деле я не знаю правил грамматики. Однако, если вы пытаетесь убедить людей что-то сделать, мне кажется, вам следует использовать их язык.
—Дэвид Огилви
2. Поддержание любопытства — лаконичность
После ясности следующий шаг в переписывании — краткость : удалите все, что, как вы теперь понимаете, не требуется, чтобы выразить свою точку зрения. Вот как вы заставляете читателей закончить ваш пост. Большинство читателей уходят не потому, что им не нравятся ваши идеи, а потому, что им скучно.
Краткость — это соотношение: это количество значимых идей к общему количеству слов. Сообщение может состоять из 50 000 слов, но если оно по-прежнему насыщено инсайтами и лишено бессвязных слов, то оно краткое.
Будьте осторожны
Начинающие писатели относятся к письму как к очищению своего сознания. Они записывают каждую мысль, которая приходит в голову, одно предложение за другим, пока не наберут то количество слов, которое, по их мнению, должно ударить.
В речи, когда вы говорите что-то, что не находит отклика, вы можете добавлять предложения, чтобы более подробно объяснить свою точку зрения. Не делайте этого письменно. Если ваше предложение не находит отклика, вы возвращаетесь и переписываете его.
Написание — это процесс преднамеренных мыслей, когда каждое предложение оправдывает свое существование в вашем окончательном варианте.
Однажды я наткнулся на глупую рецензию на книгу, которая помогает мне понять:
«Отличная книга, но по завышенной цене. 15 долларов за книгу на 100 страниц?»
Фактически, ваши 15 долларов вернули вам 100 страниц плюс три часа вашего времени. Книга на 100 страниц исключает 200 страниц наполнителя. Автор оказал вам услугу. Они понимали, что, хотя слова для них бесплатны, они обходятся читателю дорого.
Когда сознательный писатель что-то записал, они спрашивают:
- Какова цель только что сделанного мной утверждения? Как это повлияет на читателя?
- Могу я вместо этого сказать что-нибудь более полезное?
Позже, когда они застревают, пытаясь исследовать свои идеи, они спрашивают:
- Как я могу сделать эту мысль более убедительной?
- Каковы интересные последствия того, что я только что сказал?
Как переписать для краткости
Вот мой трехэтапный процесс для краткости.
1. Шаг 1. Перепишите разделы целиком.
Для каждого раздела статьи я буду:
- Прочитать.
- Сделайте часовой перерыв.
- Перепишите раздел по памяти, сосредоточив внимание только на критических точках.
Новая версия, записанная из памяти, пойдет по более прямому пути к тому, что важно. Пух улетучивается, когда вы сосредотачиваетесь на эффективном переформулировании себя.
Альтернативный подход — позвонить другу: пусть он прочитает ваш черновик, а затем резюмирует его по телефону за тридцать секунд.Удалите черновик и перезапустите с их сводку . Добавляйте больше слов только по мере необходимости, чтобы ваши идеи нашли отклик.
Я называю эти устные сводки, и они мое секретное оружие краткости.
Пример: устное резюме +
Оригинальное вступление: не сжато
Я думал, что у меня ускоренный ход, но я ошибался. После того, как я присоединился к одному из самых быстрорастущих стартапов в истории, я тратил 80 с лишним часов в неделю, читал все книги о карьере, которые мог достать, встречался с влиятельными руководителями отделов — и все это ни к чему не приводило.
В 25 лет я был несчастен, не мог добиться успеха в карьере и начал верить, что технологии преувеличены. Работа чувствовалась пустотелой. Не было четких следующих шагов, и все, что я столкнулся с моим менеджером, — это систематизированная обратная связь о сосредоточении внимания на текущей задаче.
Только позже я понял, что моя оплошность была очевидна. Я следовал неправильному рецепту; обычная карьерная лестница не двигалась с той скоростью, которую я требовал.
Моим главным прорывом было игнорирование личного роста с целью оптимизации роста компании.А моя нынешняя роль в крупной организации не позволяла мне явно сдвинуть с мертвой точки. После прихода в более молодую, менее определенную компанию появился миллион способов добавить материальную ценность. Я пытался исчерпать их все, пока не нашел правильные способы решения проблем в масштабе.
Анализ производительности стал гораздо менее важным, чем постоянное получение результатов. Огромное влияние открыло новые уровни личностного роста. Следуя общепринятому мнению, округление навыков или отметка для повышения по службе заняло бы больше времени и принесло бы меньшее вознаграждение.
Этот другой подход также побудил меня мыслить за пределами определенной «лестницы». Я проложил свой собственный путь, который привел к созданию моих собственных высокоэффективных ролей.
Я хочу помочь вам избежать моих ошибок и построить успешную карьеру. Пока все остальные поднимаются по определенной карьерной лестнице, постройте свою. Так веселее.
Новое вступление: устное резюме
Стимулы между сотрудниками и компаниями не согласованы.
Чтобы ускорить карьеру и найти истинное удовлетворение в своей работе, вы должны подчинить свои должностные обязанности своей воле: определить совпадение между личным ростом и возможностями, которые оказывают огромное влияние на вашу компанию.Затем отстаивайте свое право на существование на перекрестке. Докажите это своим менеджерам.
Вам нужно проделать свой собственный путь вместо того, чтобы слепо подниматься по служебной лестнице — иначе вы винтик в машине.
И вот в чем хитрость: чем меньше организация, тем больше возможностей для этого.
↑ Выше мы сократили исходное вступление, используя устное резюме. Следующим шагом будет немного расширить его, добавив цвета и сюжета, чтобы его точки зрения находили отклик.
Чтобы быть кратким на уровне предложения, вам следует удалить слова-вставки, которые не добавляют необходимого контекста к предложению.Это не интуитивно понятно для начинающих писателей: лишние слова заставляют читателей невольно замедляться и выполнять дополнительную работу во время чтения. Из-за этого им труднее распознать истинную суть предложения. Чтение множества лишних слов также является рутинной работой для вашего мозга. А когда вы изматываете читателей, они перестают читать.
Остается:
Чтобы быть кратким на уровне предложения, удалите слова, которые не добавляют необходимый контекст. Лишние слова заставляют читателей замедляться и выполнять дополнительную работу. Из-за этого им труднее понять суть предложения.А когда вы изматываете читателей, они перестают читать.
Если убрать лишние детали, становится ясно, что сказать самое ценное.
3. Шаг 3. Перефразируйте абзацы с нуля
Теперь, когда мы знаем, что мы больше всего хотим сказать, мы можем кратко перефразировать каждый абзац.
Опять же, вот наш абзац:
Чтобы быть кратким на уровне предложения, удалите слова, которые не добавляют необходимого контекста. Лишние слова заставляют читателей замедляться и выполнять дополнительную работу.Из-за этого им труднее понять суть предложения. А когда вы утомляете читателей, они перестают читать.
Давайте перефразируем это с нуля:
Ваше предложение короткое, когда никакие дополнительные слова не могут быть удалены. Краткость важна, потому что наполнитель скрывает ваши темы для разговора и утомляет читателей бросить курить.
Бинго. Это лаконично. В середине этого абзаца никому не будет скучно.
Повторите (1) удаление слов и (2) перефразирование с нуля для каждого абзаца.Когда вы закончите, ваша статья станет втрое короче и менее скучной.
Тест твита
После написания сообщения я пытаюсь сжать его в один твит. Если я могу это сделать, не потеряв ничего важного, я удаляю сообщение и вместо этого публикую твит.
Но если мне нужно разделить пост на несколько твитов, я знаю, что у меня есть что-то содержательное, и поэтому публикую пост.
«Если речь идет о десятиминутном выступлении, на его подготовку у меня уходит две недели.Если речь идет о получасовом выступлении, у меня на это уйдет неделя. Если я могу говорить столько, сколько захочу, это вообще не требует подготовки. Теперь я готов ».
— Оперативник Миллер
Попробуйте сами
Сделайте этот абзац кратким:
« Q System One была квантовым компьютером. Эта машина стала кульминацией года — или десятилетий, в зависимости от того, как измерить — труда и изобретательности ученых IBM. Исследователи собрали этот сталактит из вложенных контейнеров в нише неофутуристического исследовательского центра компании в Йорктаун-Хайтс, штат Нью-Йорк.Y. Белая охлаждаемая штуковина свисала с кубической алюминиевой и стальной рамы высотой девять футов. В самой внутренней камере: специальный процессор, чье потомство могло помочь решить некоторые из самых сложных мировых научных и деловых проблем. Это конкретное поколение отличалось огневой мощью 20 квантовых битов, или «кубитов», мощных блоков данных, на которых работают эти машины мечты ».
Во-первых, удалите ненужные слова. С ясностью того, что осталось, перефразируйте их кратко.
3. Поддержание любопытства — интрига
Ясность и лаконичность — вот что помогает идеям находить отклик. Они уменьшают трение при чтении. Но именно интрига в первую очередь заставляет людей читать.
Интрига порождается двумя способами:
- Сказать что-то новое — Новое утверждение — это утверждение, которое противоречит интуиции, противоречит повествованию, удивительно или элегантно поэтично. Это не то, что читатели могли бы легко понять самостоятельно, и это связано с тем, что им небезразлично.
- Утаивание информации — Дразните читателей вопросом, на который вы не ответите позже.
Если они будут повторяться в вашем сообщении, читатели, вероятно, сохранят интерес.
Поместите золотые монеты по пути.
—Рой Питер Кларк
1. Новинка
Я использую технику, которую я называю счетом дофамина , чтобы вплести новизну в свои письма:
- Я прошу людей оставлять отзывы, выделяя каждое предложение, которое дает им дофамин.Это моменты новизны, когда они замечают: «Ах, это интересно». Для каждого попадания я увеличиваю счетчик в конце соответствующего предложения. Вот так (3).
- После того, как несколько человек оставили отзывы, я ищу длинные отрезки без допамина. Затем я переписываю эти разделы, чтобы они были более краткими, или добавляю в них больше новизны (идей и сюрпризов).
- Я прополаскиваю и повторяю до тех пор, пока предмет не станет стабильным дофаминовым.
Если вы дочитали до этого места, счет дофамина — вот что вас сюда привело.
Пример подсчета дофамина +
Ниже мое эссе Creativity Faucet из ранее в этом руководстве. Я поделился этим с друзьями и попросил их указать, какие части тела вызывают у них выброс дофамина.
Самым ценным навыком письма является генерация новых идей.
В прошлом году я наткнулся на ментальную модель, чтобы добиться этого.
Я смотрел документальный фильм об авторе песен Эде Ширане. В нем он описал процесс написания песен.Мне показалось, что идентичен процессу, который автор Нил Гейман подробно описал в своем мастер-классе.
Вот в чем дело.
Эд Ширан и Нил Гейман входят в 0,000001% лучших в своих областях. Они среди, скажем, 25 человек в мире , которые последовательно создают блокбастеры за блокбастерами.
Если два творца мирового уровня разделяют один и тот же творческий процесс , я склоняюсь к ним. (4)
Я называю их подход краном для творчества:
Визуализируйте свое творчество как трубу с водой.Первая миля трубопровода забита сточными водами. Эти сточные воды необходимо слить до поступления чистой воды.
Поскольку в вашей трубе только один кран, нет никакого быстрого пути к достижению прозрачности, кроме первого слива сточных вод.
Давайте применим это к творчеству: в начале сеанса письма вы должны записать каждую плохую идею, которая рефлекторно приходит в голову. Вместо того, чтобы быть самокритичным и сопротивляться этим плохим идеям, вы должны открыто их принять.
Как только плохие идеи опорожняются, начинают появляться сильные идеи.
Вот почему: как только вы сгенерировали достаточно плохих результатов, ваш мозг начинает рефлексивно определять, какие элементы вызывают плохие качества. Затем он начинает их избегать. Вы начинаете сопоставление новых идей с образцом с большей интуицией. (9)
Большинство творцов никогда не избавляются от сточных вод. Они сопротивляются своим плохим идеям. (8)
Если вы открыли пустой документ, нацарапали несколько мыслей, а затем ушли, потому что вас не ударили золотом, значит, вы тоже не прошли через это.
Нил и Эд знают, что они не сверхчеловеки. Они просто уважают реальность человеческого творчества: у мозга есть линейный конвейер для творчества, и труба требует прочистки. На каждом творческом занятии они выделяют время для слива сточных вод.
Их не волнует, придет ли в конце концов чистая вода. Так всегда бывает: (7)
- Ваша работа начинается как слабая имитация.
- Вы определяете, что делает имитацию слабой.
- Вы повторяете имитацию до тех пор, пока она не станет оригинальной. (5)
2. Утаивание информации
Второй способ поддержания интриги — утаивание информации.
В целом рассказывание историй — это искусство выбора того, что скрывать. При переписывании решите, какие ответы вы хотите зарезервировать до конца.
Психология интриги
Вспомните ранее психологический принцип введения:
Принцип крючка — «Увлекательное вступление вызывает у читателей доброжелательность, поэтому они упускают из виду несовершенную середину.
Давайте объединим этот принцип со вторым:
Правило конца пика — «Люди судят о переживании в основном на основании того, что они чувствовали в его наиболее напряженной точке и в конце. Это означает, что они не судят о переживании. на основе среднего значения каждого момента ».
Вместе эти два принципа помогают нам гарантировать читателям удовольствие от нашего письма:
- Имейте увлекательное вступление, которое способствует укреплению репутации.
- Имейте хотя бы один пик понимания или удивления.
- Иметь концовку, которая удовлетворительно объясняет, почему этот отрывок стоит прочитать.
Вот ваша формула письма. Остальная часть вашей статьи может быть слабой, и большинству читателей она все равно понравится. Успокойтесь: не каждый абзац должен быть интересным.
Давайте применим
правило максимума к кинематографу: многие скучные инди-фильмы объединены одной интенсивно поэтической сценой и катарсическим финалом. Это все, что им нужно, чтобы люди наслаждались ими.Мы уже узнали об интриге
На предыдущей странице я поделился своим процессом создания озарения и удивления: используйте себя в качестве посредника для читателя, а затем наклонитесь к тому, что волнует , вы .
Затем, чтобы придать своей статье пикантность, просто объедините самые проницательные и неожиданные тезисы для обсуждения в один раздел. Создайте кульминационный момент.
На предыдущей странице также обсуждалось, как сделать ваш финал удовлетворительным: резко резюмируйте, насколько ваши идеи актуальны для будущего читателя.
Takeaways
- Трифект интриги : 1. Захватывающее вступление. 2. Раздел сильного удивления или озарения. 3. Концовка, которая удовлетворительно объясняет, почему произведение стоило прочитать.
- В длинных кусках старайтесь равномерно распределять удары дофамина. Положитесь на внешнюю обратную связь; Трудно судить об этом самому.
Где вы находитесь
Давайте переместим вас в этот справочник:
- Выберите тему
- Напишите вступление и используйте его для мозгового штурма тем для обсуждения
- Получите отзывы о своем вступлении
- Создайте план, используя вашу цель
- Изучите темы для обсуждения в своем плане
- Перепишите для ясности, краткости и интриги
- Цикл между переписыванием, отдыхом и получением обратной связи ← Вы здесь
- Копирование редактирования грамматики, выбора слов, и стиль
Обратная связь
Обратная связь only эффективный способ улучшить ваше письмо.Это не обязательно.
Обратная связь — также самый эффективный способ отточить свой глаз перед переписыванием: оставив это другим, вы заставите усвоить уроки, полученные из этого справочника.
Запрашивать обратную связь
Спрашивать отзывы у аудитории, для которой вы пишете. Вот шаблон:
Было бы полезно, если бы вы медленно прочитали мою статью , чтобы записать ваши реакции во время ее чтения. Например:1. Скажите мне, что удалить — Когда вы заметите, что ваш интерес угасает, вы можете сказать: «Я здесь плыву.Это не убедительно и не добавляет ценности. Быстрее переходите к делу и зацепите меня ».
2. Скажите, что нужно удвоить на — Когда что-то вас волнует, вы можете сказать:« Дофамин ударил. Идите дальше в этом направлении. У меня есть еще вопросы ».
3. Скажите мне, что непонятно — Когда вы закончите читать, поставьте мне оценку от 1 до 10 в зависимости от того, насколько оно было удовлетворительным. Не бойтесь дать мне низкую оценку. Сообщите мне это нуждается в доработке, вы избавляете меня от публикации плохих работ для публики.
Продолжайте просить обратную связь, а затем переписывать, пока не наберете в среднем 7,5+ баллов по горстке респондентов. Это помещает вас в категорию «это хорошее чтение».
Не тратьте время на поиски 9+. 9 у одного читателя — это не то же самое, что у другого, поэтому попытка удовлетворить всех приводит к раздутому посту, который никого не устраивает. Есть много отличных способов рассказать историю, поэтому будьте счастливы, когда найдете тот, который работает.
Спасибо Брайану Тейту, Мэтью Мюллеру, Нату Элиасону, Лачи Груму и Эндрю Аскинсу за отзывы об этом справочнике.
Обратная связь от своего будущего «я»
Ваш лучший источник обратной связи часто — это вы, , с выгодой оглядываясь назад. Но вам нужен перерыв, чтобы увидеть эту перспективу. Я обнаружил, что недели часто бывает достаточно, чтобы в достаточной степени оклеветать себя.
Если я лично обладаю писательской суперсилой, то я могу оглядываться на свою работу сверхкритичным взглядом — и могу делать это неоднократно. И мне это нравится.
Возьмите это у самого успешного гиперпродуктивного писателя в мире, Стивена Кинга: он засовывает рукопись в ящик на шесть недель, прежде чем написать свой окончательный вариант.Когда он снова открывает его, он свежим взглядом видит его недостатки.
Я также обнаружил, что смена письменных принадлежностей заставляет мой мозг перечитывать мои работы новыми глазами. Например, если я написал первый черновик в Dropbox Paper, я напишу второй черновик в Google Docs. Эти инструменты по-разному форматируют текст, что выводит ваш мозг из режима распознавания образов и создает ощущение, будто вы редактируете чужую работу.
Вот проблемы с письмом, которые я могу определить только с помощью перерыва:
- Неуклюжие предложения.
- Не навязчиво.
- Не выдерживая интриги.
- Не является кратким на уровне раздела за разделом.
Однако я могу поймать их в режиме реального времени:
- Опечатки.
- Нечеткие предложения.
- Не кратко.
Включая обратную связь +
Разница между хорошими писателями и плохими писателями заключается в том, что хорошие писатели знают, когда они пишут плохо.
—Дэн Браун
Заявление об отказе от плагиата
Я заметил, что блоггеры и создатели курсов перепрофилируют мою работу и выдают ее за свою.Будьте осторожны с плагиатом. Я храню сторонние временные метки своих справочников, и я могу видеть историю изменений на вашем сайте с помощью Archive.org. Вместе они определяют, когда кто-то забрал мою работу.
Использование карт перезаписи в модуле перезаписи URL
- Читать 9 минут
В этой статье
Руслана Якушева
Это пошаговое руководство познакомит вас с концепцией перезаписи карт в модуле перезаписи URL и расскажет, как создавать правила перезаписи, использующие карты перезаписи.В этом пошаговом руководстве вы создадите две карты перезаписи: одна карта перезаписи будет использоваться правилом, которое выполняет перезапись URL, а другая карта перезаписи будет использоваться правилом, которое выполняет перенаправления в другой домен.
Фон
Карта перезаписи — это произвольный набор пар имени и значения, который можно использовать в правилах перезаписи для генерации URL-адреса замены во время перезаписи. Карты перезаписи особенно полезны, когда у вас есть большой набор правил перезаписи, и все эти правила используют статические строки (то есть, когда не используется сопоставление с образцом).В таких случаях вместо определения большого набора простых правил перезаписи вы можете поместить все сопоставления в карту перезаписи в виде ключей и значений между входным URL-адресом и URL-адресом замены. Затем, чтобы найти URL-адрес замены на основе входного URL-адреса, у вас будет одно правило перезаписи, которое ссылается на эту карту перезаписи.
Предварительные требования
Для этого пошагового руководства требуются следующие предварительные требования:
- IIS 7.0 или выше с включенной службой ролей ASP.NET
- Перезапись URL Установлен выпуск Go Live
Настройка тестовой веб-страницы
Чтобы продемонстрировать функциональность перезаписи карты, мы будем использовать простой тестовый asp.чистая страница. Эта страница считывает переменные веб-сервера и выводит их значения в браузере.
Скопируйте следующий код ASP.NET и поместите его в папку % SystemDrive% \ inetpub \ wwwroot \
в файле с именем article.aspx:
<% @ Page Language = "C #"%>
Тест модуля перезаписи URL
Тестовая страница модуля перезаписи URL
<таблица>
Переменная сервера
Значение
Исходный URL:
<% = Запрос.ServerVariables ["HTTP_X_ORIGINAL_URL"]%>
Конечный URL:
<% = Request.ServerVariables ["SCRIPT_NAME"] + "?" + Request.ServerVariables ["QUERY_STRING"]%>
После копирования этого файла перейдите по адресу http: //localhost/article.aspx
и проверьте, правильно ли отображается страница в браузере.
Создание карты для перезаписи
Сначала мы создадим карту перезаписи и правило перезаписи, которые будут использоваться для выполнения перезаписи URL-адресов на основе набора статических сопоставлений между исходными и перезаписанными URL-адресами. Чтобы создать карту перезаписи, выполните следующие действия:
Перейти к диспетчеру IIS
Выберите «Веб-сайт по умолчанию»
В представлении функций нажмите «Перезаписать URL»
На панели «Действия» справа нажмите « Просмотреть перезаписанные карты»… «:
На панели «Действия» на правом сайте щелкните «Добавить карту перезаписи …», а затем введите имя карты перезаписи как « StaticRewrites »:
На странице вновь созданной карты перезаписи в панели «Действия» справа щелкните «Добавить запись сопоставления …», а затем введите « / article » и « /article.aspx?id». = 1 & title = some-title «для текстовых полей» Исходное значение: «и» Новое значение: «соответственно.Исходное значение указывает, с какого URL-адреса мы хотим перезаписать; новое значение указывает, какой URL-путь мы хотим переписать.
Повторите шаг 6, чтобы добавить следующие сопоставления в карту перезаписи:
Исходное значение: Новое значение: / some-title /article.aspx?id=1&title=some-title /post/some-title.html /article.aspx?id=1&title=some-title
Теперь откройте Интернет.config для вашего веб-сайта (если вы используете веб-сайт по умолчанию, то файл web.config можно найти по адресу % SystemDrive% \ inetpub \ wwwroot
). Вы должны увидеть следующий раздел:
Эта карта перезаписи, называемая « StaticRewrites », будет использоваться для перезаписи входящих URL-адресов (определенных как ключи в карте перезаписи) в их внутренние представления (определенные как значения). Атрибут defaultValue указывает, какое значение использовать, если входящий URL-адрес не был определен на карте. В этом случае будет возвращена пустая строка.
Обратите внимание, что нет очевидного общего шаблона в ключах и их отношении к значениям. Это означает, что невозможно использовать регулярные выражения или подстановочные знаки для определения логики преобразования URL. Кроме того, это означает, что если бы мы не использовали карты перезаписи, нам пришлось бы создать три правила перезаписи. С помощью карт перезаписи мы можем создать только одно правило перезаписи. В следующем разделе объясняется, как создать правило перезаписи, использующее эту карту перезаписи.
Ссылка на карту перезаписи из правила перезаписи
Чтобы создать правило перезаписи, использующее карты перезаписи, скопируйте и вставьте следующий XML-код в раздел
в сети.конфигурационный файл для вашего сайта:
<правила>
<условия>
Давайте рассмотрим каждый элемент правила, чтобы понять, что он делает:
— этот элемент сообщает модулю перезаписи URL-адреса соответствовать любому входящему URL-адресу (с использованием специального символа регулярного выражения «.»)
— эти условия проверяют, является ли значение, возвращаемое из перезаписи карты StaticRewrites, не пустой строкой. Для выполнения этой проверки значение серверной переменной REQUEST_URI передается как параметр в карту перезаписи. Если карта перезаписи содержит запись с ключом, который совпадает с REQUEST_URI, то будет возвращено значение, соответствующее этому ключу. Шаблон регулярного выражения будет соответствовать только непустым строкам, поэтому, если с карты была возвращена пустая строка, условие будет оцениваться как ложное, следовательно, перезапись выполняться не будет.Если была возвращена непустая строка, то эта строка будет записана в обратной ссылке из-за скобок, используемых в шаблоне.
— этот элемент указывает, что модуль перезаписи URL-адреса должен перезаписать текущую строку URL-адреса новой, извлеченной из карты перезаписи. Обратите внимание, что атрибут url ссылается на обратную ссылку условия {C: 1}, которая была установлена при сопоставлении шаблона в условии.
Тестирование правила перезаписи
Чтобы проверить правило перезаписи, использующее карту «StaticRewrites», откройте веб-браузер и запросите любой из следующих URL-адресов:
http: // localhost / article1
http: // localhost / some-title
http: // localhost / post / some-title.html
Любой из приведенных выше URL-адресов должен вызвать перезапись URL-адреса в соответствии с отображениями, определенными в карте перезаписи. Ваши результаты должны выглядеть, как на следующей странице:
Использование карты перезаписи для перенаправления
Теперь мы создадим еще одну карту перезаписи, которая будет использоваться для определения статических сопоставлений между исходными URL-адресами и URL-адресами перенаправления. Чтобы создать карту перезаписи, выполните те же шаги, что описаны в разделе «Создание карты для перезаписи», но назовите карту перезаписи как «StaticRedirects» и используйте следующие значения для сопоставления записей:
Исходное значение: | Новое значение: |
---|---|
/ старый артикул.aspx? id = 1 | /article.aspx?id=1 |
/posts/default.aspx?id=1 | /article.aspx?id=1 |
/old-title.html | /article.aspx?id=1 |
Файл web.config для вашего веб-сайта теперь должен содержать эти две карты перезаписи:
Чтобы создать правило, использующее карту перезаписи StaticRedirects, скопируйте и вставьте следующее определение правила в Интернет.файл конфигурации для вашего веб-сайта:
<правила>
<условия>
Опять же, давайте рассмотрим каждый элемент правила, чтобы понять, что он делает:
— этот элемент указывает модулю перезаписи URL-адреса соответствовать любому входящему URL-адресу (с использованием специального символа регулярного выражения». «)
— эти условия проверяют, является ли значение, возвращаемое из карты перезаписи. StaticRedirects не является пустой строкой. Для выполнения этой проверки значение серверной переменной REQUEST_URI передается как параметр в карту перезаписи. Если карта перезаписи содержит запись с ключом, который совпадает с REQUEST_URI, то будет возвращено значение, соответствующее этому ключу.Шаблон регулярного выражения будет соответствовать только непустым строкам, поэтому, если с карты была возвращена пустая строка, условие будет оцениваться как ложное, следовательно, перезапись выполняться не будет. Если была возвращена непустая строка, то эта строка будет записана в обратной ссылке из-за скобок, используемых в шаблоне.
— этот элемент указывает, что модуль перезаписи URL должен перенаправить веб-клиента на новый URL-адрес, который создается путем объединения нового имени домена (в данном случае для простоты это тот же домен) и пути URL-адреса перенаправления, возвращаемого картой StaticRedirects.
Проверка правила перенаправления
Чтобы проверить правило перезаписи, использующее карту «StaticRedirects», откройте веб-браузер и запросите любой из следующих URL-адресов:
http: // localhost / old-article
http: //localhost/posts/default.aspx? Id = 1
http: //localhost/old-title.html
Любой из приведенных выше URL-адресов должен вызвать перенаправление браузера на http: //localhost/article.aspx? Id = 1
.
Использование карты перезаписи для параметров строки запроса
Использование перезаписываемых карт не ограничивается приведенными выше примерами.Карта перезаписи — это общий набор пар ключ-значение, который можно использовать в любом месте правила перезаписи. Чтобы проиллюстрировать это, давайте создадим карту перезаписи, которую можно использовать для управления параметрами строки запроса.
Создайте третью карту перезаписи, выполнив те же шаги, что описаны в разделе «Создание карты для перезаписи». Назовите карту перезаписи «IDtoTitleMap» и используйте следующие значения для сопоставления записей:
Исходное значение: | Новое значение: |
---|---|
1 | some-title-1 |
2 | some-title-2 |
3 | some-title-3 |
Интернет.config для вашего веб-сайта теперь должен содержать эти две карты перезаписи:
Чтобы создать правило, использующее карту перезаписи IDtoTitleMap , скопируйте и вставьте следующее определение правила в Интернет.| & amp;) id = ([0-9] +) (?: & amp; | $) «/> — это условие проверяет, содержит ли строка запроса параметр id , имеющий числовое значение. Фактическое значение зафиксировано в обратной ссылке условия. Обратите внимание, что этот шаблон будет работать, даже если в строке запроса есть другие параметры.
— эти условия проверяют, не является ли значение, возвращаемое из карты перезаписи IDtoTitleMap , пустой строкой.Условие использует обратную ссылку из предыдущего шаблона условия в качестве входных данных для карты перезаписи.
— этот элемент указывает, что модуль перезаписи URL должен перенаправлять веб-клиента назад к файлу article.aspx, но с другим параметром строки запроса title , значение которого было найдено в карте перезаписи.
Проверка правила для строки запроса
Чтобы проверить правило перезаписи, которое использует карту « IDtoTitleMap », откройте веб-браузер и запросите любой из следующих URL-адресов:
http: // localhost / article.aspx? id = 1
. Он будет перенаправлен на http: //localhost/article.aspx? Title = some-title-1. http: //localhost/article.aspx? someparam = somevalue & id = 2
. Он будет перенаправлен на http: //localhost/article.aspx? Title = some-title-2
Сводка
В этом пошаговом руководстве вы узнали, как использовать карты перезаписи для определения сопоставлений URL-адресов для правил перезаписи и перенаправления. Также вы узнали, как использовать карты перезаписи для управления параметрами строки запроса.
Карты перезаписи позволяют сократить количество правил перезаписи, когда URL-адреса перезаписи и перенаправления статичны, а логика перезаписи не может быть выражена с помощью каких-либо методов сопоставления с образцом.
HTTP-сервер Apache, версия 2.4
Резюме
Модуль mod_rewrite
использует перезапись на основе правил
движок, основанный на синтаксическом анализаторе регулярных выражений PCRE, для перезаписи запрошенных URL-адресов на
муха. По умолчанию mod_rewrite
отображает URL-адрес файловой системы
путь. Однако его также можно использовать для перенаправления одного URL-адреса на другой URL-адрес или
для вызова внутренней прокси-выборки.
mod_rewrite
обеспечивает гибкий и мощный способ
манипулировать URL-адресами, используя неограниченное количество правил.Каждое правило может иметь
неограниченное количество условий присоединенного правила, чтобы вы могли переписать URL
на основе переменных сервера, переменных среды, заголовков HTTP или времени
Марки.
mod_rewrite
работает с полным URL-путем, включая
раздел информации о пути. Правило перезаписи можно вызвать в httpd.conf
или .htaccess
. Путь сгенерирован
по правилу перезаписи может включать строку запроса или может привести к внутреннему
подобработка, перенаправление внешнего запроса или внутренний прокси
пропускная способность.
Более подробная информация, обсуждение и примеры приведены в подробная документация по mod_rewrite.
Темы
Директивы
Контрольный список исправлений
См. Также
mod_rewrite
предлагает подробное протоколирование своих действий
на уровнях журнала трассировки1 от
до трассировки8
. В
уровень лога можно установить специально для mod_rewrite
с помощью директивы LogLevel
: до
уровень отладка
, никакие действия не логируются, а trace8
означает, что практически все действия регистрируются.
mod_rewrite
значительно замедлит работу вашего HTTP-сервера Apache! Используйте журнал
уровень выше trace2
только для отладки!Пример
Перезапись предупреждений LogLevel: trace3
RewriteLog
Те, кто знаком с более ранними версиями mod_rewrite
, несомненно, будет искать RewriteLog
и RewriteLogLevel
директивы.Эта функция была полностью заменена на
новая конфигурация ведения журнала для каждого модуля, упомянутая выше.
Чтобы получить только журнал для mod_rewrite
сообщения, направьте файл журнала через grep:
хвост -f error_log | fgrep '[перезаписать:'
Директива RewriteBase
определяет
Префикс URL-адреса, который будет использоваться для каталога (htaccess) RewriteRule
директив, которые
подставьте относительный путь.
Эта директива требуется при использовании относительного пути в подстановке в контексте каталога (htaccess), если не из следующих условий:
- Исходный запрос и замена указаны под
DocumentRoot
(в отличие от доступа другими способами, такими какПсевдоним
). - Файловая система Путь к каталогу, содержащему
RewriteRule
, с суффиксом относительного подстановка также действительна как URL-путь на сервере (это редко). - В Apache HTTP Server 2.4.16 и более поздних версиях эта директива может быть
опускается, когда запрос отображается через
Псевдоним
илиmod_userdir
.
В приведенном ниже примере требуется RewriteBase
чтобы не переписывать на http://example.com/opt/myapp-1.2.3/welcome.html
поскольку ресурс не относился к корню документа. Этот
неправильная конфигурация обычно заставляет сервер искать «opt»
каталог в корне документа.index \ .html $ «» welcome.html »
Директива RewriteCond
определяет
условие правила. Один или несколько RewriteCond
может предшествовать RewriteRule
директива. Следующее правило используется только в том случае, если оба
текущее состояние URI соответствует его шаблону, и , если эти условия выполнены.
TestString — это строка, которая может содержать следующие расширенные конструкции в дополнение к обычному тексту:
- Обратные ссылки RewriteRule : Это
обратные ссылки формы
$ N
(0 <= N <= 9).От 1 до 9 долларов обеспечивает доступ к сгруппированным части (в скобках) выкройки, отRewriteRule
, которое подлежит текущему набор условийRewriteCond
. $ 0 обеспечивает доступ ко всей строке, соответствующей этому шаблону. - Обратные ссылки RewriteCond : Это
обратные ссылки формы
% N
(0 <= N <= 9). % 1 до% 9 предоставляют доступ к сгруппированным части (опять же, в скобках) шаблона, начиная с последней совпавшейRewriteCond
в текущем наборе условий.% 0 обеспечивает доступ ко всей строке, соответствующей этот образец. - Расширения RewriteMap : Это
расширения формы
$ {mapname: key | default}
. Документацию для RewriteMap для более подробной информации. - Server-Variables : Это переменные
форма
% {
НАЗВАНИЕ_OF_VARIABLE}
где NAME_OF_VARIABLE может быть взятой строкой из следующего списка:Заголовки HTTP: соединение и запрос: HTTP_ACCEPT
HTTP_COOKIE
HTTP_FORWARDED
HTTP_HOST
HTTP_PROXY_CONNECTION
HTTP_REFERER
HTTP_USER_AGENTAUTH_TYPE
CONN_REMOTE_ADDR
CONTEXT_PREFIX
CONTEXT_DOCUMENT_ROOT
IPV6
PATH_INFO
QUERY_STRING
REMOTE_ADDR
REMOTE_HOST
REMOTE_IDENT
REMOTE_PORT
REMOTE_USER
REQUEST_METHOD
SCRIPT_FILENAMEвнутреннее устройство сервера: дата и время: специальные: DOCUMENT_ROOT
SCRIPT_GROUP
SCRIPT_USER
SERVER_ADDR
SERVER_ADMIN
SERVER_NAME
SERVER_PORT
SERVER_PROTOCOL
SERVER_SOFTWARETIME_YEAR
TIME_MON
TIME_DAY
TIME_HOUR
TIME_MIN
TIME_SEC
TIME_WDAY
TIMEAPI_VERSION
CONN_REMOTE_ADDR
HTTPS
IS_SUBREQ
REMOTE_ADDR
REQUEST_FILENAME
REQUEST_SCHEME
REQUEST_URI
THE_REQUESTВсе эти переменные соответствуют одноименному HTTP MIME-заголовки, переменные C HTTP-сервера Apache или
struct tm
полей системы Unix.Большинство из них задокументировано здесь или где-либо еще в Руководстве или в спецификации CGI.SERVER_NAME и SERVER_PORT зависят от значений
UseCanonicalName
иUseCanonicalPhysicalPort
соответственно.Специальные для
mod_rewrite
включают те, что указаны ниже.-
ВЕРСИЯ_ API
- Это версия API модуля Apache httpd.
(внутренний интерфейс между сервером и
модуль) в текущей сборке httpd, как определено в
включить / ap_mmn.час Версия API модуля
соответствует используемой версии Apache httpd (в
выпускная версия Apache httpd 1.3.14, для
например, это 199
: 10), но в основном это интерес для авторов модуля.
-
CONN_REMOTE_ADDR
- Начиная с версии 2.4.8: равноправный IP-адрес соединения (см.
mod_remoteip
модуль). -
HTTPS
- Будет содержать текст «on», если соединение
с использованием SSL / TLS или «выключено» в противном случае.(Эта переменная
можно безопасно использовать независимо от того,
mod_ssl
загружен). -
IS_SUBREQ
- Будет содержать текст «истина», если запрос в настоящее время обрабатывается подзапрос, иначе «ложь». Подзапросы могут быть сгенерированы модулями, которым необходимо разрешить дополнительные файлы или URI для выполнения своих задач.
-
REMOTE_ADDR
- IP-адрес удаленного хоста (см.
mod_remoteip
модуль). -
ИМЯ_ФАЙЛА ЗАПРОСА
- Полный путь локальной файловой системы к файлу или
сценарий, соответствующий запросу, если он уже
было определено сервером в то время
REQUEST_FILENAME Ссылка на
.Иначе, например, при использовании в контексте виртуального хоста, то же самое значение какREQUEST_URI
. В зависимости от стоимостиAcceptPathInfo
, сервер мог использовать только некоторые ведущие компонентыREQUEST_URI
для сопоставления запроса с файлом. -
REQUEST_SCHEME
- Будет содержать схему запроса (обычно
«http» или «https»).На это значение можно повлиять
Имя сервера
. -
REQUEST_URI
- Компонент пути запрошенного URI,
например, «/index.html». Это, в частности, исключает
строка запроса, которая доступна как собственная переменная
с именем
QUERY_STRING
. -
THE_REQUEST
- Полная строка HTTP-запроса, отправленная
браузер на сервер (например,г., «
GET /index.html HTTP / 1.1
«). Это не включать любые дополнительные заголовки, отправленные браузер. Это значение не было отменено. (декодировано), в отличие от большинства других переменных, представленных ниже.
-
Если TestString имеет специальное значение expr
, CondPattern будет рассматриваться как
ap_expr. Заголовки HTTP, указанные в
выражение будет добавлено в заголовок Vary, если novary
флаг не указан.
Также вам следует знать:
Переменные SCRIPT_FILENAME и REQUEST_FILENAME содержат одно и то же значение — значение
имя_файла
поле внутреннегоrequest_rec
структура HTTP-сервера Apache. Первое имя — это общеизвестное имя переменной CGI. в то время как второй является подходящим аналогом REQUEST_URI (который содержит значениеuri
полеrequest_rec
).Если произошла замена и перезапись продолжается, значение обеих переменных будет соответственно обновлено.
Если используется в контексте сервера (, т. Е. , перед запрос отображается в файловую систему) SCRIPT_FILENAME и REQUEST_FILENAME не может содержать полную локальную файловую систему path, поскольку на данном этапе обработки путь неизвестен. Обе переменные изначально будут содержать значение REQUEST_URI. в этом случае.Чтобы получить полную локальную файловую систему путь запроса в контексте сервера, используйте URL-адрес смотреть вперед
% {LA-U: REQUEST_FILENAME}
, чтобы определить последнее значение REQUEST_FILENAME.-
% {ENV: переменная}
, где переменная может быть любая переменная окружения также доступна. Это ищется через внутренний Структуры Apache httpd и (если их там нет) черезgetenv ()
из процесса сервера Apache httpd. -
% {SSL: variable}
, где переменная — это имя среды SSL переменная, может использоваться независимо от того,mod_ssl
загружен, но всегда будет расширяться до пустая строка, если это не так. Пример:% {SSL: SSL_CIPHER_USEKEYSIZE}
может расширяться до128
. Эти переменные доступны даже без установка опцииStdEnvVars
дляSSLOptions
директива. -
% {HTTP: заголовок}
, где заголовок может быть любое имя HTTP-заголовка MIME, всегда можно использовать для получения значение заголовка, отправленного в HTTP-запросе. Пример:% {HTTP: Proxy-Connection}
— это значение заголовка HTTP «Прокси-соединение:
».Если заголовок HTTP используется в условии, этот заголовок добавляется к Заголовок ответа Vary в случае, если условие оценивается значение true для запроса.Это , а не , если условие оценивается как ложное для запроса. Добавление заголовка HTTP to the Vary заголовок ответа необходим для правильного кеширования.
Следует иметь в виду, что условия следуют за коротким замыканием. логика в случае флага ‘
ornext | OR
‘ так что некоторые условия могут вообще не оцениваться. -
% {LA-U: переменная}
может использоваться для упреждающего просмотра, который выполняет внутренний (на основе URL) подзапрос для определения окончательного значение переменной .Это можно использовать для доступа переменная для перезаписи, недоступная в данный момент этап, но будет установлен на более позднем этапе.Например, переписать по
REMOTE_USER
переменная из для каждого сервера (файлhttpd.conf
), вы должны используйте% {LA-U: REMOTE_USER}
— это переменная устанавливается этапами авторизации, которые наступают после фазы преобразования URL (во время которойmod_rewrite
работает).С другой стороны, поскольку
mod_rewrite
реализует его контекст для каждого каталога (файл.htaccess,
) через фаза исправления API и потому что авторизация фазы приходят с до на этой фазе, вы просто можете использовать% {REMOTE_USER}
в этом контексте. -
% {LA-F: variable}
можно использовать для выполнения внутреннего (на основе имени файла) подзапрос, чтобы определить окончательное значение из переменной .В большинстве случаев это то же самое, что и LA-U выше.
CondPattern — шаблон условия, регулярное выражение, которое применяется к текущий экземпляр TestString . TestString сначала оценивается, а затем сравнивается с CondPattern .
CondPattern обычно Perl совместимое регулярное выражение , но есть дополнительный синтаксис для выполнения других полезных тестов против Teststring :
- Вы можете префикс строки шаблона с помощью
‘
!
‘(восклицательный знак), чтобы отрицать результат условия, независимо от того, какой тип CondPattern используется. - Вы можете выполнять лексикографические сравнения строк:
-
- Лексикографически предшествует
Обрабатывает CondPattern как простую строку и сравнивает его лексикографически с TestString . Верно, если TestString лексикографически предшествует CondPattern . - > CondPattern
- Лексикографически следует
Обрабатывает CondPattern как простую строку и сравнивает его лексикографически с TestString .Верно, если TestString лексикографически следует CondPattern . - = CondPattern
- Лексикографически равно
Обрабатывает CondPattern как простую строку и сравнивает его лексикографически с TestString . Верно, если TestString лексикографически равна CondPattern (две строки точно равно, символ для персонажа).Если CondPattern это""
(две кавычки) это сравнивает TestString с пустой строкой. - <= CondPattern
- Лексикографически меньше или равно
Обрабатывает CondPattern как простую строку и сравнивает его лексикографически с TestString . Правда если TestString лексикографически предшествует CondPattern или равно CondPattern (две строки равны, символ за символом). - > = CondPattern
- Лексикографически больше или равно
Обрабатывает CondPattern как простую строку и сравнивает его лексикографически с TestString . Правда если TestString лексикографически следует CondPattern или равно CondPattern (две строки равны, символ за символом).
Примечание
Оператор сравнения строк является частью CondPattern аргумент и должен быть включен в кавычки, если они используются.Например.RewriteCond% {HTTP_USER_AGENT} "= Этот робот / 1.0"
-
- Вы можете выполнять целочисленные сравнения:
- -экв
- Численно равно равно
TestString обрабатывается как целое число и численно по сравнению с CondPattern . Верно, если они численно равны. - -ge
- Численно g reater than или e qual to
TestString обрабатывается как целое число и численно по сравнению с CondPattern .Верно, если TestString численно больше или равно к CondPattern . - -GT
- Численно g reater t han
TestString обрабатывается как целое число и численно по сравнению с CondPattern . Верно, если TestString численно больше, чем Модель CondPattern . - -le
- Численно l ess than или e qual to
TestString обрабатывается как целое число и численно по сравнению с CondPattern . Верно, если TestString численно меньше или равно к CondPattern . Избегайте путаницы с -l с помощью -L или -h вариант . - -lt
- Численно l ess t han
TestString обрабатывается как целое число и численно по сравнению с CondPattern . Верно, если TestString численно меньше, чем Модель CondPattern . Избегайте путаницы с -l с помощью -L или -h вариант . - -ne
- Численно n ot e qual to
TestString обрабатывается как целое число и численно по сравнению с CondPattern . Верно, если они численно различны. Это эквивалентно! -Экв
.
- Вы можете выполнять различные тесты атрибутов файлов:
- -d
- — это d irectory.
Обрабатывает TestString как путь и проверяет независимо от того, существует он или нет, и является ли он каталогом. - -ф
- Штатная ф ил.
Обрабатывает TestString как путь и проверяет независимо от того, существует он или нет, и является ли он обычным файлом. - -F
- Существующий файл через подзапрос.
Проверяет, является ли TestString допустимым файлом, доступны через все настроенные в данный момент серверы контроль доступа для этого пути.Это использует внутренний подзапрос для выполнения проверки, поэтому используйте его с осторожностью — это может повлиять на производительность вашего сервера! - -h
- — это символическая ссылка, соглашение bash.
См. -l . - -л
- Символьный л чернил.
Обрабатывает TestString как путь и проверяет независимо от того, существует он или нет, и является ли он символической ссылкой.Можно также используйте соглашение bash -L или -h , если есть вероятность путаницы например, при использовании -lt или -ле пробы. - -L
- — это символическая ссылка, соглашение bash.
См. -l . - -с
- Обычный напильник, с размером .
Обрабатывает TestString как путь и проверяет независимо от того, существует он или нет, и является ли он обычным файлом с размером больше чем ноль. - -U
Существующий URL через подзапрос.
Проверяет, является ли TestString действительным URL-адресом, доступны через все настроенные в данный момент серверы контроль доступа для этого пути. Это использует внутренний подзапрос для выполнения проверки, поэтому используйте его с осторожностью — это может повлиять на производительность вашего сервера!Этот флаг только возвращает информацию о вещах например, контроль доступа, аутентификация и авторизация.Этот флаг не возвращает информацию о коде статуса настроенный обработчик (статический файл, CGI, прокси и т. д.) будет иметь вернулся.
- -х
- Имеет разрешение x ecutable.
Обрабатывает TestString как путь и проверяет независимо от того, существует он или нет, и имеет ли он права на выполнение. Эти разрешения определяются в соответствии с базовая ОС.(. +) / other / archive / $ 1 [R]
Если TestString имеет специальное значение
expr
, CondPattern будет рассматриваться как ap_expr.В приведенном ниже примере
-strmatch
используется для сравнитеREFERER
с именем хоста сайта, чтобы заблокировать нежелательные хотлинкинг.RewriteCond expr "!% {HTTP_REFERER} -strmatch '*: //% {HTTP_HOST} / *'" RewriteRule "^ / images" "-" [F]
Вы также можете установить специальные флаги для CondPattern , добавив [
флаги ]
в качестве третьего аргумента для RewriteCond
директива, где flags — это разделенный запятыми список любых
следующие флаги:
Пример:
Переписать главную страницу сайта в соответствии с
Заголовок запроса User-Agent:
, вы можете
используйте следующее:
RewriteCond "% {HTTP_USER_AGENT}" "(iPhone | Blackberry | Android)" RewriteRule "^ / $" "/ домашняя страница./ $ "" /homepage.std.html "[L]
Объяснение: Если вы используете браузер, который идентифицирует себя в качестве мобильного браузера (обратите внимание, что пример неполный, так как есть много других мобильных платформ), мобильная версия домашняя страница обслуживается. В противном случае обслуживается стандартная страница.
Директива RewriteEngine
разрешает или
отключает механизм перезаписи среды выполнения. Если он установлен на выкл.
этот модуль не выполняет обработку во время выполнения в
все.Он даже не обновляет SCRIPT_URx
переменные среды.
Используйте эту директиву для отключения правил в определенном контексте,
вместо того, чтобы комментировать все директивы RewriteRule
.
Обратите внимание, что конфигурации перезаписи не
наследуется виртуальными хостами. Это означает, что вам необходимо иметь RewriteEngine в директиве
для каждого виртуального хоста
в котором вы хотите использовать правила перезаписи.
RewriteMap
директив
типа прг
не запускаются во время инициализации сервера, если они определены в
контекст, для которого не установлено значение RewriteEngine
по
Описание: | Определяет функцию сопоставления для поиска по ключу |
---|---|
Синтаксис: | RewriteMap MapName MapType : MapSource [ MapTypeOptions ] |
Контекст: | конфигурация сервера, виртуальный хост |
Статус: | Расширение |
Модуль: | mod_rewrite |
Доступен только третий параметр, доступный параметр MapT45: | Apache 2.4.29 и выше |
Директива RewriteMap
определяет Переписывающая карта , которую можно использовать внутри правила
строки подстановки с помощью функций отображения на
вставлять / заменять поля с помощью поиска по ключу. Источник
этот поиск может быть разных типов.
Карта MapName — это название карты и будет использоваться для указания маппинг-функция для строк подстановки перезаписи правило с помощью одной из следующих конструкций:
$ {
Имя карты :
LookupKey }
$ {
Имя карты :
LookupKey |
Значение по умолчанию }
Когда возникает такая конструкция, карта MapName выполняется поиск ключа LookupKey .Если ключ найден, конструкция функции карты заменяется на SubstValue . Если ключ не найден, значит, он заменяется DefaultValue или пустой строкой если не было указано DefaultValue . Пустые значения вести себя так, как если бы ключ отсутствовал, поэтому это невозможно чтобы различать ключи с пустыми значениями и отсутствующие ключи.
Например, вы можете определить RewriteMap
как:
RewriteMap examplemap "txt: / путь / к / файлу / карте./ex/(.*) "" $ {examplemap: $ 1} "
Значение аргумента MapTypeOptions зависит от в частности MapType . Увидеть Использование RewriteMap для больше информации.
Следующие комбинации для MapType и MapSource можно использовать:
- текст
- Обычный текстовый файл, содержащий разделенные пробелами пары «ключ-значение». пары, по одной в строке. (Подробнее …)
- р-н
- Случайным образом выбирает запись из простого текстового файла (Подробности…)
- дбм
- Ищет запись в файле dbm, содержащую имя, значение
пары. Хеш создается из формата обычного текстового файла с использованием
httxt2dbm
утилита. (Подробнее …) - внутр
- Одна из четырех доступных внутренних функций, предоставляемых
RewriteMap
: toupper, tolower, escape или unescape. (Подробнее …) - prg
- Вызывает внешнюю программу или сценарий для обработки переписывание.(Подробнее …)
- dbd или fastdbd
- Оператор SQL SELECT, выполняемый для поиска переписать цель. (Подробнее …)
Дополнительные сведения и многочисленные примеры можно найти в RewriteMap HowTo
Директива RewriteOptions
устанавливает некоторые
специальные параметры для текущего сервера или каталога
конфигурация. Строка Option в настоящее время может
быть только одним из следующих:
-
Наследовать
Это заставляет текущую конфигурацию наследовать конфигурация родителя.В контексте виртуального сервера это означает, что карты, условия и правила основных сервер унаследован. В контексте каталога это означает что условия и правила родительского каталога
.htaccess конфигурация
или<Каталог>
разделы наследуются. Унаследованные правила виртуально копируются в раздел, в котором используется эта директива. Если используется в в сочетании с локальными правилами, унаследованные правила копируются за местные правила.Положение этой директивы — ниже или выше местных правил — не влияет на это поведение. Если местные правила вынудили прекратить переписывание, унаследованные правила не будут быть обработанным.Применяются правила, унаследованные от родительской области после правил, указанных в дочерней области.
-
InheritBefore
Как
Наследовать
выше, но правила из родительской области применяются правила перед правилами, указанными в дочерней области.
Доступно в Apache HTTP Server 2.3.10 и более поздних версиях.-
InheritDown
Если эта опция включена, все дочерние конфигурации будут наследовать конфигурация текущей конфигурации. Это эквивалентно указание
RewriteOptions Inherit
во всех дочерних элементах конфигурации. См. ПараметрInherit
для более подробной информации. о том, как обрабатываются родительско-дочерние отношения.
Доступно в HTTP-сервере Apache 2.4.8 и новее.-
InheritDownBefore
Как
InheritDown
выше, но правила из текущего область применения применяются до правил, указанных в любом дочернем объем.
Доступно в Apache HTTP Server 2.4.8 и новее.-
Игнорировать Наследовать
Эта опция заставляет текущую и дочернюю конфигурации игнорировать все правила, которые будут унаследованы от родителя, указав
InheritDown
илиInheritDownBefore
.
Доступно в Apache HTTP Server 2.4.8 и новее.-
AllowNoSlash
По умолчанию
mod_rewrite
игнорирует URL-адреса, которые сопоставляются с каталог на диске, но без косой черты в конце в ожидании, что модульmod_dir
выдаст клиенту перенаправление на канонический URL с косой чертой в конце.Когда директива
DirectorySlash
выключено, параметрAllowNoSlash
можно включить, чтобы эти правила перезаписи больше не игнорируются.Эта опция позволяет применять правила перезаписи в файлах .htaccess, которые соответствуют каталогу без при желании косая черта в конце.
Доступно в Apache HTTP Server 2.4.0 и новее.-
AllowAnyURI
Когда
RewriteRule
используется вVirtualHost
или в контексте сервера с версия 2.2.22 или более поздняя httpd,mod_rewrite
будет обрабатывать правила перезаписи только в том случае, если URI запроса является URL-путем.Это позволяет избежать некоторые проблемы с безопасностью, когда определенные правила могут разрешить «неожиданные» расширения паттернов (см. CVE-2011-3368 и CVE-2011-4317). Чтобы снять ограничение на соответствие URL-пути,AllowAnyURI
опция может быть включена, иmod_rewrite
применит набор правил к любому запрос строки URI, независимо от того, совпадает ли эта строка грамматика URL-пути, требуемая спецификацией HTTP.
Доступно в HTTP-сервере Apache 2.4.3 и новее.Предупреждение системы безопасности
Включение этой опции сделает сервер уязвимым для проблемы безопасности при использовании с правилами перезаписи, которые не тщательно написано. Настоятельно рекомендуется что этот вариант не используется. В частности, остерегайтесь ввода строки, содержащие символ «
@
«, который может изменить интерпретацию преобразованного URI в соответствии с над именами CVE.-
MergeBase
С этой опцией значение
RewriteBase
копируется из того места, где оно явно определено в любой подкаталог или подкаталог, который не определяет свой собственныйRewriteBase
.Это был поведение по умолчанию в версиях с 2.4.0 по 2.4.3, и флаг для его восстановления доступен Apache HTTP Server 2.4.4 и новее.-
IgnoreContextInfo
Когда производится относительная замена в контексте каталога (htaccess) и
RewriteBase
не был установлен, этот модуль использует некоторые расширенный URL-адрес и контекстная информация файловой системы для изменения относительная подстановка обратно в URL.Такие модули какmod_userdir
иmod_alias
предоставить эту расширенную контекстную информацию. Доступно в версии 2.4.16 и новее.-
LegacyPrefixDocRoot
До 2.4.26, если подстановка представляла собой абсолютный URL-адрес, текущий виртуальный хост, URL-адрес может сначала быть сокращен до URL-пути а затем сокращен до локального пути. Поскольку URL-адрес может быть уменьшен к локальному пути, путь должен иметь префикс корня документа.Это предотвращает доступ к файлу, например / tmp / myfile, когда запрос выполняется на http: // host / file / myfile со следующим
RewriteRule
.RewriteRule /file/(.*) http: // localhost / tmp / $ 1
Эта опция позволяет использовать старое поведение там, где документ root не имеет префикса для локального пути, который был сокращен с URL. Доступно в версии 2.4.26 и новее.
Директива RewriteRule
— настоящая
переписывающая рабочая лошадка.Директива может встречаться более одного раза,
с каждым экземпляром, определяющим одно правило перезаписи. В
порядок, в котором эти правила определены, важен — это порядок
в котором они будут применяться во время выполнения.
Образец есть
совместимый с Perl обычный
выражение. С чем сравнивается этот шаблон, зависит от
где определена директива RewriteRule
.
Что соответствует?
В контексте
VirtualHost
, Образец первоначально будет сопоставлен с частью URL-адрес после имени хоста и порта и перед строкой запроса (например,грамм. «/app1/index.html»). Это (% -декодированный) URL-путь.В контексте каталога (каталог
,
и .htaccess), шаблон сопоставляется только с частичным путем, например с запросом из «/app1/index.html» может привести к сравнению с «app1 / index.html» или index.html в зависимости от того, где находитсяRewriteRule
определенный.Путь к каталогу, в котором определено правило, удаляется из текущего отображаемого путь к файловой системе перед сравнением (до косой черты в конце включительно).Чистым результатом этого удаления префиксов для каталогов является то, что правила в этот контекст соответствует только части текущего отображаемого пути файловой системы «внизу», где определено правило.
, такие как
DocumentRoot
иAlias
, или даже результат предыдущих заменRewriteRule
, определить текущий отображаемый путь файловой системы.Если вы хотите сопоставить имя хоста, порт или строку запроса, используйте
RewriteCond
с% {HTTP_HOST}
,% {SERVER_PORT}
или% {QUERY_STRING}
переменных соответственно.
Перезапись для каталога
- Механизм перезаписи может использоваться в файлах .htaccess и в разделах
- Чтобы включить механизм перезаписи в этом контексте, вам необходимо установить
«
RewriteEngine на
» и «Options FollowSymLinks
» должен быть включен. Если ваш администратор отключил переопределениеFollowSymLinks
для каталог пользователя, то вы не можете использовать механизм перезаписи.Этот ограничение требуется по соображениям безопасности. - См.
RewriteBase
директива для получения дополнительной информации о том, какой префикс будет добавлен обратно к относительные замены. - Если вы хотите сопоставить полный URL-путь в каталоге
(htaccess) RewriteRule, используйте переменную
% {REQUEST_URI}
вRewriteCond
. - Удаляемый префикс всегда заканчивается косой чертой, что означает, что сопоставление происходит со строкой, которая никогда не имеет ведущей косой черты ./ никогда соответствует в контексте каталога.
- Хотя правила перезаписи синтаксически разрешены в разделах
- Блоки
If
следуйте правилам контекста каталога . - По умолчанию mod_rewrite переопределяет правила, когда
объединение разделов, принадлежащих к одному контексту.Директива
RewriteOptions
может изменить это поведение, например, используя настройку Inherit . -
RewriteOptions
также регулирует поведение разделов, указанных на одном уровне вложенности конфигурации. в в следующем примере по умолчанию только RewriteRules, указанные во второмЕсли
блок считаются, так как первые отменяются. ИспользованиеRewriteOptions
Inherit заставляет mod_rewrite объединить два разделов и рассмотрим оба набора утверждений, а не только последнее.
<Если "истина"> # Без RewriteOptions Inherit это правило отменяется следующим # раздел, и перенаправление не произойдет для URI, содержащих 'foo' RewriteRule foo http://example.com/foo [R] <Если "истина"> Панель RewriteRule http://example.com/bar [R]
Для некоторых подсказок по обычному выражения, см. mod_rewrite Введение.
В mod_rewrite
, символ НЕ
(‘!
‘) также доступен как возможный шаблон
префикс.Это позволяет вам отрицать узор; сказать, например:
« , если текущий URL-адрес НЕ соответствует этому
узор ». Это можно использовать в исключительных случаях, когда
легче сопоставить отрицательный образец, или как последний
правило по умолчанию.
Примечание
При использовании символа НЕ для отрицания паттерна вы не можете включать сгруппированные части подстановочных знаков в этом шаблоне. Это потому, что когда шаблон НЕ совпадает (т. е. совпадение отрицания), нет содержание для групп.Таким образом, если используются отрицательные паттерны, вы нельзя использовать $ N
в строке подстановки!Замена из правило перезаписи — строка, заменяющая исходный URL-путь, который соответствует Образец . Замена может быть:
- путь к файловой системе
- Обозначает место в файловой системе ресурса. для доставки клиенту. Замены только обрабатывается как путь к файловой системе, когда правило настроено в контекст сервера (виртуального хоста) и первый компонент путь в подстановке существует в файловой системе
- URL-путь
- A
DocumentRoot
— относительный путь к ресурс, который будет обслуживаться.Обратите внимание, чтоmod_rewrite
пытается угадать, указали ли вы путь к файловой системе или URL-путь, проверив, есть ли первый сегмент path существует в корне файловой системы. Например, если вы указываете строку Substitution/www/file.html
, тогда это будет рассматриваться как URL-путь , если не каталог с именемwww
существует в корне или в вашей файловой системе (или, в случае с использованием перезаписи в.htaccess
относительно корень вашего документа), и в этом случае он будет рассматриваться как путь к файловой системе. Если вы желаете другого Директивы сопоставления URL-адресов (например,, псевдоним
), применяемые к полученный URL-путь, используйте флаг[PT]
как описано ниже. - Абсолютный URL
- Если указан абсолютный URL,
mod_rewrite
проверяет, имя хоста совпадает с текущим хостом.Если да, то схема и имя хоста удаляется, и результирующий путь обрабатывается как URL-путь. В противном случае выполняется внешнее перенаправление для данный URL. Чтобы принудительно выполнить внешнее перенаправление обратно на текущий хост, см. флаг[R]
ниже. -
-
(черточка) - Прочерк означает, что замену выполнять нельзя. (существующий путь пройден нетронутым). Это используется когда необходимо применить флаг (см. ниже) без изменения путь.
В дополнение к обычному тексту строка Substitution может включать
- обратных ссылок (
$ N
) на RewriteRule узор - обратных ссылок (
% N
) на последнюю совпавшую Шаблон RewriteCond - серверных переменных как в тестовых строках условий правила
(
% {VARNAME}
) - вызова функции отображения
(
$ {mapname: key | default}
)
Обратные ссылки — это идентификаторы формы
№ ( N = 0..9), который будет заменен
по содержанию N -й группы
соответствует Образец . Переменные сервера такие же
что касается TestString из RewriteCond
директива. Функции отображения происходят из ОбновитьКарта
директивы и объясняются там.
Эти три типа переменных раскрываются в указанном выше порядке.
Правила перезаписи применяются к результатам предыдущей перезаписи
правила, в том порядке, в котором они определены
в файле конфигурации.URL-путь или путь к файловой системе (см. «Что соответствует?» Выше) — полностью
заменен на Замена и
процесс перезаписи продолжается до тех пор, пока не будут применены все правила,
или он явно завершается L
флаг,
или другой флаг, который подразумевает немедленное прекращение, например КОНЕЦ
или Ф.
.
Изменение строки запроса
По умолчанию строка запроса передается без изменений.Ты
однако можно создавать URL-адреса в строке подстановки, содержащей
часть строки запроса. Просто поставьте вопросительный знак внутри
строка подстановки, чтобы указать, что следующий текст должен
быть повторно введенным в строку запроса. Когда вы хотите стереть
существующей строке запроса, завершите строку подстановки просто
вопросительный знак. Чтобы объединить новые и старые строки запроса, используйте [QSA]
флаг.
Дополнительно вы можете установить специальные действия, которые должен выполнять
добавление [
флаги ]
в качестве третьего аргумента RewriteRule
директива. Флаги — это список, разделенный запятыми, заключенный в квадрат.
скобки любого из флагов в следующей таблице. Более
подробности и примеры для каждого флага доступны в документе Rewrite Flags.
B | Экранировать не буквенно-цифровые символы в обратных ссылках с до применяя преобразование. подробнее … |
backrefnoplus | BNP | Если обратные ссылки экранируются, пробелы должны быть преобразованы в % 20 вместо +.Полезно, когда обратная ссылка будет использоваться в компонент пути, а не строку запроса. подробнее … |
цепь | C | Правило привязано к следующему правилу. Если правило не работает, связанные с ним правила будут пропущены. подробнее … |
cookie | CO = NAME : VAL | Устанавливает cookie в клиентском браузере. Полный синтаксис: CO = ИМЯ : VAL : домен [: время жизни [: путь [: безопасный [: httponly ]]]] подробности… |
discardpath | DPI | Указывает, что часть PATH_INFO перезаписанного URI отброшен. детали … |
КОНЕЦ | Немедленно остановить процесс перезаписи и не применять никаких больше правил. Также предотвращает дальнейшее выполнение правил перезаписи в контексте каталога и .htaccess. (Доступно в 2.3.9 и новее) подробнее … |
env | E = [!] VAR [: VAL ] | Вызывает установку переменной среды VAR (в значение VAL , если предусмотрено).Форма ! VAR причины переменная окружения VAR должна быть отключена. подробнее … |
запрещено | F | Возвращает ответ 403 ЗАПРЕЩЕНО браузеру клиента. подробнее … |
пропало | G | Возвращает ответ 410 GONE браузеру клиента. подробнее … |
Обработчик | H = Обработчик содержимого | Вызывает отправку результирующего URI на указанный Обработчик содержимого для обработки. подробнее … |
последняя | L | Немедленно остановить процесс перезаписи и не применять никаких больше правил. Особенно обратите внимание на предостережения для каждого каталога и Контекст .htaccess (см. также флаг КОНЕЦ). подробнее … |
следующая | N | Повторно запустите процесс перезаписи, начиная с первого правило, используя результат набора правил в качестве начального точка. детали … |
nocase | NC | Делает сравнение шаблонов нечувствительным к регистру. подробнее … |
noescape | NE | Запретить mod_rewrite применить экранирование шестнадцатеричного кода специальные символы в результате перезаписи. подробнее … |
nosubreq | NS | Вызывает пропуск правила, если текущий запрос внутренний подзапрос. подробнее … |
прокси | P | Принудительно отправлять заменяемый URL-адрес для внутреннего использования в качестве прокси-сервера запрос. детали … |
сквозной | PT | Принудительно передает полученный URI обратно в URL
механизм сопоставления для обработки других URI-to-filename
переводчики, такие как Псевдоним или Перенаправление . подробнее … |
qsappend | QSA | Добавляет любую строку запроса из исходного URL-адреса запроса в любая строка запроса, созданная в цели перезаписи. подробнее … |
qsdiscard | QSD | Отменить любую строку запроса, прикрепленную к входящему URI. детали … |
qslast | QSL | Интерпретировать последний (самый правый) вопросительный знак как строку запроса разделитель вместо первого (самого левого), как обычно. Доступно в версии 2.4.19 и новее. детали … |
перенаправление | R [= код ] | Принудительно выполняет внешнее перенаправление, необязательно с указанным Код состояния HTTP. подробнее … |
пропустить | S = число | Сообщает механизму перезаписи пропустить следующий номер rules, если текущее правило совпадает. подробнее … |
тип | T = MIME-тип | Принудительно указать MIME-тип целевого файла быть указанным типом. подробнее … |
Расширение домашнего каталога
Когда строка подстановки начинается со строки
наподобие «/ ~ user» (через явный текст или обратные ссылки), mod_rewrite
выполняет
расширение домашнего каталога независимо от наличия или конфигурации
из mod_userdir
.localpath (. *) http: // otherhost / otherpath $ 1 [P]
Хорошее, плохое и завышенное обещание
Перезапись URL-ссылок — это метод, используемый несколькими компаниями, занимающимися безопасностью электронной почты, для борьбы с вредоносными ссылками в электронных письмах. Защита от целевых атак (TAP) Proofpoint , Mimecast’s URL Protect и Microsoft Safe Links — все они используют аналогичные формы перезаписи URL в своих фильтрах электронной почты.Многие из наших собственных средств защиты от фишинга предлагают ту же функцию Safe Link.
Пример перезаписи ссылки проверки URL-адреса:
Когда новое электронное письмо включает URL-адрес, ссылка перезаписывается на лету, чтобы добавить префикс к исходному веб-адресу. Например, в случае защиты от целевых атак Proofpoint:
http://amazon.com
становится
https://urldefense.proofpoint.com/v2/url?u=http-3A__amazon.com&d=DQIFAg&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=6rcUljFJZnpk5uomPd3v3WCzboqh0RuwO-BZyxMfi0U&m=fo458hhJrF87dIYyHwDAWZkegyOy6sGJVAGrntX1mP0&s=2r8EJkvOhZj1zr2Emwwgjav6t4vvg-O42jL_dHQUDkk&e=
Переписанный URL-адрес кодирует исходный URL-адрес « http-3A__amazon.com «в ссылку, которая перенаправит пользователя на собственные серверы Proofpoint urldefense.proofpoint.com с некоторыми уникальными кодами для отслеживания отдельных пользователей и их кликов.
Основная цель перезаписи URL-адресов типа SafeLink состоит в том, чтобы (будем надеяться) перехватить вредоносные URL-адреса, которые почтовый фильтр мог пропустить, когда фильтр впервые просканировал электронное письмо. Например, если веб-сайт www.perfectlyfine.com считается безопасным, когда он отображается в новом электронном письме, но скомпрометирован через несколько часов или даже несколько дней, система может предотвратить доступ пользователя к сайту, потому что они сначала перенаправляются на URL-адрес префикса.
Поскольку это очень распространенный инструмент защиты от фишинга, наши клиенты обычно спрашивают, следует ли им включать его для своих учетных записей Office 365 или G Suite.
Удивительно, но мы обычно не рекомендуем этого делать. Вот почему.
Превосходное качество SafeLinks
Маркетинговые предложения некоторых поставщиков средств защиты электронной почты предполагают, что они будут выполнять активный анализ ссылок или эмуляцию URL-адресов при получении каждого электронного письма и будут знать, что блокировать позже, когда пользователь щелкает мышью.Например, TAP Proofpoint продвигает «Наш уникальный прогнозный анализ упреждающе выявляет подозрительные URL-адреса и помещает их в изолированную программную среду». К сожалению, в большинстве случаев конкретный URL-адрес не сканируется до тех пор, пока его не щелкнет первый человек.
Вот типичный сценарий, который разыгрывается в лаборатории.
Тест 1. Фишинговая ссылка нулевого дня через антифишинговую программу.
В этом случае ссылка нулевого дня отправляется через устройство, пока мы отслеживаем исходящий трафик. URL-адрес перезаписывается и передается во входящие, но трафик на URL-адрес не создается.Предполагается, что URL-адрес был проверен по известному списку плохих веб-сайтов, но во время первого сканирования не происходило активной эмуляции этого URL-адреса нулевого дня.
Через 10 минут, когда URL-адрес щелкают в первый раз, ссылка считается безопасной, и пользователь перенаправляется на вредоносный сайт. Только после этого первого щелчка мы отправляем трафик от устройства к URL-адресу для эмуляции.
Через несколько минут при повторном щелчке по URL-адресу он блокируется механизмом перенаправления.
Хотя это может быть полезно, если вы не первый человек, щелкнувший по данной ссылке, все больше фишинговых атак используют настраиваемые электронные письма для нацеливания на определенных получателей в организации.
Тест 2: тот же процесс, но подождите 24 часа, прежде чем щелкнуть «безопасную» ссылку.
Результат этого теста был точно таким же, как и у первого. Между входящим электронным письмом и первым щелчком исходящего запроса к вредоносному сайту не было, и первый человек, щелкнувший URL-адрес нулевого дня, был перенаправлен на вредоносный сайт.(Фактически, это был любой, кто щелкнул в течение нескольких минут после первоначального щелчка — между моментом запуска эмуляции и моментом, когда сайт был признан вредоносным.)
Нам действительно не нужно было проводить этот тест, потому что большинство систем URL «Safe» Link спроектированы именно таким образом. По причинам масштабируемости и пропускной способности электронной почты проще разделить процессы сканирования и эмуляции электронной почты и тестировать только те ссылки, по которым люди действительно переходят.
Как входящий фильтр, так и сервер перенаправления полагаются на статические фильтры, чтобы обеспечить почти мгновенное время отклика.Поскольку для механизма эмуляции может потребоваться время, он используется для сканирования неизвестных URL-адресов и использования результатов этих сканирований для заполнения статических списков входящего фильтра и фильтров перенаправления. Если URL-адрес не был проверен и признан вредоносным, пользователь перенаправляется. Пока эмулятор не проверит ссылку и не обновит статический список, неизвестные URL-адреса считаются допустимыми.
Плохой
Обратной стороной замены URL-адресов на безопасную ссылку является ложное чувство безопасности, которое она обеспечивает конечным пользователям.Хотя ИТ-специалисты могут хорошо понять этот процесс, у большинства пользователей сложится впечатление, что любое «безопасное» соединение прошло положительные испытания на безопасность. Звучит безопасно нажимать на безопасную ссылку.
Это может иметь побочный эффект, повышая вероятность того, что ваши пользователи будут нажимать на ссылку. Например, поскольку URL-адрес SafeLink выглядит как допустимый URL-адрес Microsoft, даже самые опытные пользователи, которые могут навести указатель мыши и проанализировать URL-адрес, прежде чем щелкнуть, могут перейти по ссылке, которая перенаправляет на поддельную страницу входа в Office 365.
Независимо от поставщика — Microsoft, Proofpoint или Mimecast — каждая система, такая как SafeLinks, может сбивать с толку и свести на нет годы обучения безопасности электронной почты.
Уродливые
Самая распространенная причина, по которой компании предпочитают не развертывать системы типа Safe Link, — это тот факт, что пользователи часто бунтуют в первые дни. Это делает электронную почту уродливой. это может даже сделать его нечитаемым. Для корпораций, которые инвестировали в регулярные тренинги по безопасности, например, отправляя регулярные электронные письма PhishMe или KnowBe4 всем своим сотрудникам, это отменило годы обучения пользователей.
«Если вы научили своих пользователей смотреть на ссылки, чтобы определять, могут ли они быть вредоносными (как мы это сделали в ходе обучения KnowBe4), переписывание ссылок сделает это обучение бесполезным. Среднестатистическому пользователю трудно расшифровать ссылку Proofpoint. Черт возьми, Я технический директор, и мне сложно понять что-либо, кроме реальной области, на которую это указывает ».
— Технический директор, разбирающийся в вопросах безопасности, желающий сохранить анонимность
Хорошее
По всем этим причинам, по которым мы делаем , а не , рекомендуем не использовать системы перезаписи URL, почему мы предлагаем их?
Лучше всего использовать «безопасные ссылки» для вскрытия.Когда они обнаруживают, что фишинговая атака была пропущена или, что еще хуже, чья-то учетная запись была скомпрометирована, группа ИТ-безопасности хочет знать все электронные письма, содержащие конкретное электронное письмо, и всех пользователей, которые нажимали на них. Замена ссылки отслеживаемым URL-адресом позволяет им выполнить этот анализ после атаки и определить степень воздействия.
Резюме: что делать?
Замена URL-адресов электронной почты не обеспечивает особой защиты от фишинга, поскольку использует статические фильтры для предотвращения перехода конечных пользователей по плохим ссылкам.Однако он дает указание узнать, кто щелкнул ссылку, если вам нужно выполнить вскрытие атаки. Хотя это и является преимуществом, недостатки большинства систем перезаписи URL-адресов перевешивают преимущества отслеживания ссылок.
Хотя некоторые партнеры Avanan предлагают системы перезаписи URL-адресов, мы обычно отключаем эту функцию по умолчанию. Когда клиенты спрашивают, следует ли им включить его, мы обычно отвечаем отрицательно.
О меню правил перезаписи
Используйте меню «Правила перезаписи», чтобы задать правила обхода и поиска URL и заголовков.
О правилах URL-адресов хранилища списков сканирования
ПравилаCrawl URL определяют, как переписываются URL-адреса, встречающиеся в веб-контенте. Вы можете указать неограниченное количество правил и условий, и вы можете манипулировать любой частью встречающихся URL-адресов.
Правила сканирования наиболее полезны для перезаписи динамических частей URL-адреса, например идентификатора сеанса, который уникален для каждого клиента, посещающего ваш веб-сайт. Вы также можете использовать правила перезаписи, чтобы скрыть части URL-адреса, такие как параметры запроса, от поискового робота.По умолчанию правила не указаны и перезапись URL-адресов не выполняется.
Во время сканирования веб-сайта URL-адреса встроенного содержимого сохраняются во временном списке дополнительных веб-страниц для сканирования. Перед добавлением URL-адреса в этот список к нему применяются правила перезаписи Store. Как правило, правила перезаписи хранилища используются для удаления идентификатора сеанса из URL-адреса или для принудительного сканирования определенного идентификатора сеанса. Когда поисковый робот извлекает URL-адрес из списка, правила перезаписи Retrieve используются для повторного управления частями этого URL-адреса.Обычно правила извлечения используются для вставки данных, зависящих от времени, обратно в URL-адрес. Именно этот конечный URL-адрес используется для фактического получения страницы с вашего веб-сайта.
См. Раздел «Правила получения URL-адресов из списка сканирования».
Как правило, вы используете исключительно правила URL-адреса магазина. Правила получения URL-адресов необходимы только в том случае, если URL-адреса содержат динамические данные, такие как идентификатор сеанса, и если эти динамические данные меняются с течением времени, чтобы оставаться действительными. В этом случае вы используете правила URL-адреса магазина, чтобы получить самое последнее состояние данных из обнаруженных URL-адресов.Затем вы используете правила получения URL-адресов, чтобы добавить эти данные к каждому URL-адресу, когда поисковый робот пытается получить страницу.
Каждое правило определяется директивой правила перезаписи (RewriteRule) и одним или несколькими необязательными условиями перезаписи (RewriteCond). Порядок правил важен. Набор правил проходит по циклу правило за правилом. Когда правило совпадает, оно проходит через все соответствующие условия перезаписи. Правило URL сканирования задается следующим образом:
RewriteCond TestString CondPattern [флаги]
Замена шаблона RewriteRule [флаги]
При обнаружении встроенного URL-адреса поисковый робот пытается сопоставить URL-адрес с шаблоном каждого правила сканирования.Если шаблон совпадает, механизм перезаписи ищет соответствующие директивы RewriteCond. Если условия отсутствуют, URL-адрес заменяется новым значением, созданным из строки подстановки, и продолжается со следующим правилом в наборе правил. Если условия существуют, они обрабатываются в том порядке, в котором они перечислены. Механизм перезаписи пытается сопоставить шаблон условия (CondPattern) с тестовой строкой (TestString). Если они совпадают, то выполняется следующее условие до тех пор, пока не закончатся доступные условия.Если все условия совпадают, URL-адрес заменяется подстановкой, указанной в правиле. Если условие не выполняется, полный набор условий и соответствующее правило не выполняется.
О директивах RewriteRule
Директива RewriteRule имеет следующий вид:
Замена шаблона RewriteRule [Флаги]
Шаблон
может быть регулярным выражением POSIX, которое применяется к текущему URL-адресу.«Текущий URL-адрес» может отличаться от исходного запрошенного URL-адреса, поскольку более ранние правила могли уже сопоставить и изменить URL-адрес.
См. Регулярные выражения.
Вы не можете использовать символ «не» («!») В качестве префикса шаблона. Символ «не» позволяет отрицать шаблон, то есть быть истинным только в том случае, если текущий URL НЕ соответствует этому шаблону. Символ «не» может использоваться, когда лучше соответствовать отрицательному шаблону, или в качестве окончательного правила по умолчанию.
ПРИМЕЧАНИЕ
В шаблоне нельзя использовать одновременно символ «не» и сгруппированные подстановочные знаки.Кроме того, вы не можете использовать отрицательный шаблон, если строка подстановки содержит $ N.
Вы можете использовать круглые скобки для создания обратной ссылки в шаблоне, на которую можно ссылаться с помощью Substitution и CondPattern.
Замена URL-адрес заменяется строкой замены, которая содержит следующее:
Обычный текст: текст, который передается без изменений.
Обратные ссылки обеспечивают доступ к сгруппированным частям (внутри скобок) Pattern или CondPattern./] *) (. *) $ https: // $ {tolower: $ 1} $ 2.
Обратные ссылки RewriteCond Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные: это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE — это строка для имени определенной переменной. См. Флаг * [E] *
для получения дополнительной информации о настройке переменных среды.
Функции: это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION имеет следующий вид:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе .
- Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_ ‘оставлены без изменений; пробелы переводятся в «+», а все остальные символы преобразуются в их эквивалент в кодировке URL% xx.
- unescape преобразует «+» обратно в пробел, а все символы, закодированные в URL% xx, обратно в отдельные символы.
ПРИМЕЧАНИЕ
Существует специальная строка подстановки: '-'
, что означает «НЕТ подстановки.Строка '-'
часто используется с флагом C (цепочка), что позволяет сопоставить URL-адрес с несколькими шаблонами до того, как произойдет подстановка.
Флаги
(необязательно) Заключите флажки в скобки []
. Несколько флагов разделяются запятыми.
Флаг | Описание |
---|---|
‘последняя | L’ | Последнее правило. Останавливает процесс перезаписи и не применяет никаких дополнительных правил перезаписи.Используйте этот флаг, чтобы предотвратить дальнейшую обработку текущего URL-адреса. |
‘следующая | N’ | Следующий раунд. Повторно запускает процесс перезаписи (начиная снова с первого правила перезаписи), используя URL-адрес из последнего правила перезаписи (а не исходный URL-адрес). Будьте осторожны, чтобы не создать тупик! |
‘цепь | C’ | Приковано к следующему правилу. Связывает текущее правило со следующим правилом (которое также может быть связано со следующим правилом и т. Д.).Если правило совпадает, процесс замены продолжается как обычно. Если правило не совпадает, все последующие связанные правила пропускаются. |
‘nocase | NC’ | Нет дела. Делает шаблон без учета регистра (то есть нет разницы между «A-Z» и «a-z»), когда шаблон сопоставляется с текущим URL-адресом. |
‘пропустить | S = num’ | Пропустить следующее правило или правила. Если текущее правило совпадает, этот флаг заставляет механизм перезаписи пропускать следующее число правил в наборе правил. Используйте этот флаг для создания псевдо-if-then-else конструкций. Последнее правило предложения then становится skip = N, где N — количество правил в предложении else. Примечание: этот флаг не совпадает с флагом ‘цепочка | C’!) |
‘env | E = VAR: VAL’ | Устанавливает переменную среды. Создает переменную среды «VAR», для которой установлено значение VAL, где VAL может содержать обратные ссылки регулярных выражений, $ N и% N, которые раскрываются.Вы можете использовать этот флаг более одного раза для установки нескольких переменных. Ссылки на переменные могут быть позже отменены в следующем шаблоне RewriteCond через% {VAR}. Используйте этот флаг для удаления и запоминания информации из URL-адресов. |
ПРИМЕЧАНИЕ
Правила перезаписи Store и Retrieve Rewrite Rules имеют общие значения переменных. Из-за этого поведения вы можете установить переменную в чувствительное ко времени значение sessionid, когда встроенный URL-адрес обнаружен и сохранен.Когда следующий URL-адрес извлекается из списка временного хранилища, последнее значение идентификатора сеанса может быть добавлено к нему перед извлечением этой страницы.
Пример RewriteRule с функцией
Предположим, что у вас есть чувствительный к регистру сервер, который обрабатывает строки «www.mydomain.com»
и «www.MyDomain.com»
по-разному. Для правильной работы вашего сервера убедитесь, что домен всегда «www.mydomain.com»
, даже если некоторые документы содержат ссылки, ссылающиеся на «www./] *)
, который соответствует всем символам между https: //
и первыми /
в URL-адресе. Шаблон также содержит вторую обратную ссылку (. *)
, которая соответствует всем оставшимся символам в URL-адресе.
Замена (https: // $ {tolower: $ 1} $ 2)
указывает поисковой системе переписать URL-адрес, используя функцию tolower
для первой обратной ссылки (https: // $ {tolower: $ 1} $ 2 )
, оставив остальную часть URL нетронутой (https: // $ {tolower: $ 1} $ 2)
.
Таким образом, URL вида https://www.MyDomain.com/INTRO/index.Html
переписывается как https://www.mydomain.com/INTRO/index.Html
.
О директивах RewriteCond
Директива RewriteCond определяет условие правила. Когда RewriteCond предшествует RewriteRule, правило используется только в том случае, если его шаблон соответствует текущему заголовку и применяются дополнительные условия. Условия перезаписи принимают следующий вид:
RewriteCond TestString CondPattern [флаги]
TestString
— это строка, которая может содержать следующие конструкции:
Обычный текст: текст, который передается без изменений./] *) (. *) $ https: // $ {tolower: $ 1} $ 2 .
Обратные ссылки RewriteCond Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные: это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг RewriteRule [E]
для получения дополнительной информации о настройке переменных.
Функции: это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION имеет следующий вид:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе. Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_’ остаются без изменений, пробелы переводятся в ‘+’, а все остальные символы преобразуются в их эквиваленты в кодировке URL
% xx
. - unescape преобразует «+» обратно в пробел, и все
% xx
URL кодируют символы обратно в одиночные символы.
CondPattern — стандартное расширенное регулярное выражение с некоторыми дополнениями.Строка шаблона может иметь префикс !
символов (восклицательный знак), чтобы указать несоответствующий шаблон. Вместо настоящих строк регулярного выражения вы можете использовать один из следующих специальных вариантов:
ПРИМЕЧАНИЕ
Вы также можете поставить перед всеми этими тестами восклицательный знак («!»), Чтобы опровергнуть их смысл.
CondPattern string | Описание |
---|---|
‘ | Лексически меньше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString. Истинно, если TestString лексически меньше CondPattern. |
‘> CondPattern’ | Лексически больше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString. Истина, если TestString лексически больше CondPattern. |
‘= CondPattern’ | Лексически равно. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString. Истинно, если TestString лексически равна CondPattern, то есть две строки точно равны (символ за символом). Если CondPattern — это просто «» (две кавычки), TestString сравнивается с пустой строкой. |
Флаги
(необязательно) Заключите флажки в скобки []
. Несколько флагов разделяются запятыми.
Флаг | Описание |
---|---|
‘nocase | NC’ | Нет дела. Этот флаг делает тест нечувствительным к регистру, то есть нет разницы между ‘A-Z’ и ‘a-z’ как в развернутой TestString, так и в CondPattern. |
‘или следующий | OR’ | Или следующее условие. Используйте этот флаг для объединения условий правила с локальным ИЛИ вместо неявного И. Без этого флага вам пришлось бы писать условие / правило несколько раз. |
Пример
Некоторые веб-страницы присваивают CGI-переменную «sessionid», когда посетитель впервые попадает на сайт.Эта переменная используется для идентификации посетителя, и, когда посетитель просматривает сайт, переменная передается. Поскольку поисковый робот выглядит как посетитель вашего сайта, ему присваивается номер sessionid. Поисковый робот поддерживает это единственное значение «sessionid», даже если вторая страница сайта пытается присвоить новое значение. Для этого вам понадобятся два правила перезаписи.
Первое правило используется для идентификации и сохранения переменной sessionid:
RewriteCond% {sessionid}!.& #] +
соответствует части URL-адреса между словомsessionid
и следующим символом** & ** или ** # **
. Поскольку это RewriteRule используется только для создания начального значения переменной sessionid, перезапись не выполняется. Обратите внимание, что в поле «Замена» правила установлено значение–
, чтобы указать, что перезапись не требуется.RewriteCond проверяет переменную
sessionid
(% {sessionid}
). Если в нем нет ни одного символа (!.& #] + (. *) $ $ 1sessionid =% {sessionid} $ 2
Шаблон RewriteRule содержит две обратные ссылки: (. +)
и (. *)
. Первая обратная ссылка соответствует всем символам до sessionid
. Вторая обратная ссылка соответствует всем символам после завершающих и
или #
.
Шаблон подстановки перезаписывает URL-адрес с использованием первой обратной ссылки, за которой следует строка «sessionid =», за которой следует значение переменной идентификатора сеанса, определенной первым правилом % {sessionid}
, за которым следует вторая обратная ссылка. ($ 1sessionid =% {sessionid} $ 2)
Обратите внимание, что это RewriteRule не содержит RewriteCond. Таким образом, он вызывает перезапись для всех URL-адресов, которые соответствуют RewriteRule Pattern . Таким образом, если значение переменной sessionid (% {sessionid}
) равно 1234
, URL в форме https://www.domain.com/products/?sessionid=5678&function=buy
переписывается как https://www.domain.com/products/?sessionid=1234&function=buy
Благодарность
Программное обеспечение механизма перезаписи было первоначально разработано Apache Group для использования в проекте HTTP-сервера Apache (https: // www.apache.org/).
Добавление правила для URL-адресов хранилища списков сканирования
Вы можете добавить правила URL-адресов хранилища списков сканирования, чтобы указать, как будут перезаписываться URL-адреса, встречающиеся в веб-содержимом. Вы можете указать неограниченное количество правил и условий, и вы можете манипулировать любой частью встречающихся URL-адресов.
Для добавления правил URL-адресов хранилища списков сканирования
В меню продукта нажмите Настройки > Правила перезаписи > Правила URL-адресов хранилища списков сканирования .
В поле Правила URL-адресов хранилища списков сканирования введите нужные правила.
Разрешены пустые строки и строки комментариев, начинающиеся с символа «#» (решетки).
(Необязательно) На странице «Правила URL-адресов хранилища списков сканирования» в поле «Правила URL-адресов хранилища списков сканирования» введите тестовый URL-адрес, правила сканирования которого вы хотите проверить, а затем нажмите Тестировать .
Нажмите Сохранить изменения .
(Необязательно) Перестройте индекс поэтапного сайта, если хотите предварительно просмотреть результаты.
См. Раздел Настройка инкрементного индекса поэтапного веб-сайта.
(Необязательно) На странице «Правила URL-адресов хранилища списков сканирования» выполните одно из следующих действий:
О правилах получения URL-адресов из списка сканирования
ПравилаCrawl URL определяют способ перезаписи URL-адресов, встречающихся в веб-контенте. Вы можете указать неограниченное количество правил и условий, и вы можете манипулировать любой частью встречающихся URL-адресов.
Прежде чем действие правил станет очевидным для клиентов, убедитесь, что вы перестроили индекс своего сайта.
Правила сканирования наиболее полезны для перезаписи динамических частей URL-адреса, например идентификатора сеанса, который уникален для каждого клиента, посещающего ваш веб-сайт. Вы также можете использовать правила перезаписи, чтобы скрыть части URL-адреса, такие как параметры запроса, от поискового робота. По умолчанию правила не указаны и перезапись URL-адресов не выполняется.
Во время сканирования веб-сайта URL-адреса встроенного содержимого сохраняются во временном списке дополнительных веб-страниц для сканирования. Когда поисковый робот извлекает URL-адрес из списка, для управления частями этого URL-адреса используются правила Retrieve Rewrite Rules.Как правило, правила извлечения используются для вставки данных, зависящих от времени, в URL-адрес. Именно этот конечный URL-адрес используется для фактического получения страницы с вашего веб-сайта.
Получить правила перезаписи необходимы только в том случае, если URL-адреса содержат динамические данные, такие как идентификатор сеанса, и если эти динамические данные меняются с течением времени, чтобы оставаться действительными. В этом случае вы используете правила перезаписи хранилища, чтобы получить самое последнее состояние данных из обнаруженных URL-адресов. Затем вы используете правила восстановления перезаписи, чтобы добавить эти данные к каждому URL-адресу, когда поисковые роботы извлекают страницу.
Каждое правило определяется директивой правила перезаписи (RewriteRule) и одним или несколькими необязательными условиями перезаписи (RewriteCond). Порядок правил важен. Набор правил проходит по циклу правило за правилом. Когда правило совпадает, оно проходит через все соответствующие условия перезаписи. Правило URL сканирования задается следующим образом:
RewriteCond TestString CondPattern [флаги]
Замена шаблона RewriteRule [флаги]
При обнаружении встроенного URL-адреса поисковый робот пытается сопоставить URL-адрес с шаблоном каждого правила сканирования.Если шаблон совпадает, механизм перезаписи ищет соответствующие директивы RewriteCond. Если условия отсутствуют, URL-адрес заменяется новым значением, созданным из строки подстановки, и продолжается со следующим правилом в наборе правил. Если условия существуют, они обрабатываются в том порядке, в котором они перечислены. Механизм перезаписи пытается сопоставить шаблон условия (CondPattern) с тестовой строкой (TestString). Если они совпадают, то выполняется следующее условие до тех пор, пока не закончатся доступные условия.Если все условия совпадают, URL-адрес заменяется подстановкой, указанной в правиле. Если условие не выполняется, полный набор условий и соответствующее правило не выполняется.
О директивах RewriteRule
Директива RewriteRule имеет следующий вид:
Замена шаблона RewriteRule [Флаги]
Шаблон
может быть регулярным выражением POSIX, которое применяется к текущему URL-адресу.«Текущий URL-адрес» может отличаться от исходного запрошенного URL-адреса, поскольку более ранние правила могли уже сопоставить и изменить URL-адрес.
См. Регулярные выражения.
Вы не можете использовать символ «не» («!») В качестве префикса шаблона. Символ «не» позволяет отрицать шаблон, то есть быть истинным только в том случае, если текущий URL НЕ соответствует этому шаблону. Символ «не» может использоваться, когда лучше соответствовать отрицательному шаблону, или в качестве окончательного правила по умолчанию.
ПРИМЕЧАНИЕ
В шаблоне нельзя использовать одновременно символ «не» и сгруппированные подстановочные знаки.Кроме того, вы не можете использовать отрицательный шаблон, если строка подстановки содержит $ N.
Вы можете использовать круглые скобки для создания обратной ссылки в шаблоне, на которую можно ссылаться с помощью Substitution и CondPattern.
Замена URL-адрес заменяется строкой замены, которая содержит следующее:
Обычный текст: текст, который передается без изменений.
Обратные ссылки обеспечивают доступ к сгруппированным частям (внутри скобок) Pattern или CondPattern./] *) (. *) $ https: // $ {tolower: $ 1} $ 2.
** RewriteCond Backreferences ** Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные: это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE — это строка для имени определенной переменной. См. Флаг [E] для получения дополнительной информации о настройке переменных среды.
Функции: это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION имеет следующий вид:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе .
- Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_ ‘оставлены без изменений; пробелы переводятся в «+», а все остальные символы преобразуются в их эквивалент в кодировке URL% xx.
- unescape преобразует «+» обратно в пробел, а все символы, закодированные в URL% xx, обратно в отдельные символы.
ПРИМЕЧАНИЕ
Существует специальная строка для замены: «-», что означает «НЕТ замены.Строка «-» часто используется с флагом C (цепочка), что позволяет сопоставить URL-адрес с несколькими шаблонами до того, как произойдет подстановка.
Флаги
Флаг | Описание |
---|---|
‘последняя | L’ | Последнее правило. Останавливает процесс перезаписи и не применяет никаких дополнительных правил перезаписи. Используйте этот флаг, чтобы предотвратить дальнейшую обработку текущего URL-адреса. |
‘следующая | N’ | Следующий раунд. Повторно запускает процесс перезаписи (начиная снова с первого правила перезаписи), используя URL-адрес из последнего правила перезаписи (а не исходный URL-адрес). Будьте осторожны, чтобы не создать тупик. |
‘цепь | C’ | Приковано к следующему правилу. Связывает текущее правило со следующим правилом (которое также может быть связано со следующим правилом и т. Д.).Если правило совпадает, процесс замены продолжается как обычно. Если правило не совпадает, все последующие связанные правила пропускаются. |
‘nocase | NC’ | Нет дела. Делает шаблон без учета регистра (то есть нет разницы между «A-Z» и «a-z»), когда шаблон сопоставляется с текущим URL-адресом. |
‘пропустить | S = num’ | Пропустить следующее правило или правила. Если текущее правило совпадает, этот флаг заставляет механизм перезаписи пропускать следующее число правил в наборе правил. Используйте этот флаг для создания псевдо-if-then-else конструкций. Последнее правило предложения then становится skip = N, где N — количество правил в предложении else. Примечание: этот флаг не совпадает с флагом ‘цепочка | C’!) |
‘env | E = VAR: VAL’ | Устанавливает переменную среды. Создает переменную среды «VAR», для которой установлено значение VAL, где VAL может содержать обратные ссылки регулярных выражений, $ N и% N, которые раскрываются.Вы можете использовать этот флаг более одного раза для установки нескольких переменных. Ссылки на переменные могут быть позже отменены в следующем шаблоне RewriteCond через% {VAR}. Используйте этот флаг для удаления и запоминания информации из URL-адресов. |
ПРИМЕЧАНИЕ
Правила перезаписи Store и Retrieve Rewrite Rules имеют общие значения переменных. Из-за этого поведения вы можете установить переменную в чувствительное ко времени значение sessionid, когда встроенный URL-адрес обнаружен и сохранен.Когда следующий URL-адрес извлекается из списка временного хранилища, последнее значение идентификатора сеанса может быть добавлено к нему перед извлечением этой страницы.
Пример RewriteRule с функцией
Предположим, у вас есть чувствительный к регистру сервер, который по-разному обрабатывает строки «www.mydomain.com» и «www.MyDomain.com». Для правильной работы вашего сервера убедитесь, что домен всегда «www.mydomain.com», даже если некоторые документы содержат ссылки, ссылающиеся на «www./] *) **, который соответствует всем символам между https: //
и первыми /
в URL-адресе. Шаблон также содержит вторую обратную ссылку (. *)
, которая соответствует всем оставшимся символам в URL-адресе.
(https: // $ {tolower: $ 1} $ 2)
указывает поисковой системе переписать URL-адрес, используя функцию tolower
для первой обратной ссылки (https: // $ {tolower: $ 1} $ 2 )
, оставив остальную часть URL нетронутой (https: // $ {tolower: $ 1} $ 2)
. Таким образом, URL вида https://www.MyDomain.com/INTRO/index.Html
переписывается как https://www.mydomain.com/INTRO/index.Html
.
О директивах RewriteCond
Директива RewriteCond определяет условие правила. Когда RewriteCond предшествует RewriteRule, правило используется только в том случае, если его шаблон соответствует текущему заголовку и применяются дополнительные условия. Условия перезаписи принимают следующий вид:
RewriteCond TestString CondPattern [флаги]
TestString
— это строка, которая может содержать следующие конструкции:
Обычный текст: текст, который передается без изменений./] *) (. *) $ https: // $ {tolower: $ 1} $ 2 .
Обратные ссылки RewriteCond Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные: это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг RewriteRule [E]
для получения дополнительной информации о настройке переменных.
Функции: это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION имеет следующий вид:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе. Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_’ остаются без изменений, пробелы переводятся в ‘+’, а все остальные символы преобразуются в их эквивалент в URL-кодировке% xx.
- unescape преобразует «+» обратно в пробел, и все символы URL% xx кодируются обратно в одиночные символы.
CondPattern — стандартное расширенное регулярное выражение с некоторыми дополнениями.Строка шаблона может начинаться с символа «!» (Восклицательного знака), чтобы указать несовпадающий шаблон. Вместо настоящих строк регулярного выражения вы можете использовать один из следующих специальных вариантов:
ПРИМЕЧАНИЕ
Вы также можете поставить перед всеми этими тестами восклицательный знак («!»), Чтобы опровергнуть их смысл.
CondPattern string | Описание |
---|---|
‘ | Лексически меньше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString. Истинно, если TestString лексически меньше CondPattern. |
‘> CondPattern’ | Лексически больше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString. Истина, если TestString лексически больше CondPattern. |
‘= CondPattern’ | Лексически равно. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString. Истинно, если TestString лексически равна CondPattern, то есть две строки точно равны (символ за символом). Если CondPattern — это просто «» (две кавычки), TestString сравнивается с пустой строкой. |
Флаги
(необязательно) Заключите флажки в скобки []
. Несколько флагов разделяются запятыми.
Флаг | Описание |
---|---|
‘nocase | NC’ | Нет дела. Этот флаг делает тест нечувствительным к регистру, то есть нет разницы между ‘A-Z’ и ‘a-z’ как в развернутой TestString, так и в CondPattern. |
‘или следующий | OR’ | Или следующее условие. Используйте этот флаг для объединения условий правила с локальным ИЛИ вместо неявного И. Без этого флага вам пришлось бы писать условие / правило несколько раз. |
Пример
Некоторые веб-страницы присваивают CGI-переменную «sessionid», когда посетитель впервые попадает на сайт.Эта переменная используется для идентификации посетителя, и, когда посетитель просматривает сайт, переменная передается. Поскольку поисковый робот выглядит как посетитель вашего сайта, ему присваивается номер sessionid. Поисковый робот поддерживает это единственное значение «sessionid», даже если вторая страница сайта пытается присвоить новое значение. Для этого вам понадобятся два правила перезаписи.
Первое правило используется для идентификации и сохранения переменной sessionid:
RewriteCond% {sessionid}!.& #] +
соответствует части URL-адреса между словомsessionid
и следующим символом ** & или # **. Поскольку это RewriteRule используется только для создания начального значения переменной sessionid, перезапись не выполняется. Обратите внимание, что в поле «Замена» правила установлено значение–
, чтобы указать, что перезапись не требуется.RewriteCond проверяет переменную
sessionid
(% {sessionid}
). Если в нем нет ни одного символа (!.& #] + (. *) $ $ 1sessionid =% {sessionid} $ 2
Шаблон RewriteRule содержит две обратные ссылки: (. +)
и (. *)
. Первая обратная ссылка соответствует всем символам до sessionid
. Вторая обратная ссылка соответствует всем символам после завершающих и
или #
.
Шаблон подстановки перезаписывает URL-адрес с использованием первой обратной ссылки, за которой следует строка «sessionid =», за которой следует значение переменной идентификатора сеанса, определенной первым правилом % {sessionid}
, за которым следует вторая обратная ссылка. ($ 1sessionid =% {sessionid} $ 2)
Обратите внимание, что это RewriteRule не содержит RewriteCond. Таким образом, он вызывает перезапись для всех URL-адресов, которые соответствуют RewriteRule Pattern . Таким образом, если значение переменной sessionid (% {sessionid}
) равно 1234
, URL в форме https://www.domain.com/products/?sessionid=5678&function=buy
переписывается как https://www.domain.com/products/?sessionid=1234&function=buy
Благодарность
Программное обеспечение механизма перезаписи было первоначально разработано Apache Group для использования в проекте HTTP-сервера Apache (https: // www.apache.org/).
Добавление правил получения списка сканирования для URL
Вы можете добавить правила получения URL-адресов из списка сканирования, чтобы указать, как перезаписываются URL-адреса, встречающиеся в веб-контенте. Получить правила перезаписи необходимы только в том случае, если URL-адреса содержат динамические данные, такие как идентификатор сеанса, и если эти динамические данные меняются с течением времени, чтобы оставаться действительными.
Чтобы добавить список сканирования, получите правила URL
В меню продукта нажмите Настройки > Правила перезаписи > Правила получения URL-адресов для списка сканирования .
В поле «Правила получения URL-адресов для списка сканирования» введите нужные правила.
Разрешены пустые строки и строки комментариев, начинающиеся с символа «#» (решетки).
(Необязательно) На странице «Правила получения URL-адресов для списка сканирования» в поле «Проверка правил получения URL-адресов для списка сканирования» введите тестовый URL-адрес, правила сканирования которого вы хотите проверить, а затем нажмите Проверить .
Нажмите Сохранить изменения .
(Необязательно) Перестройте индекс поэтапного сайта, если хотите предварительно просмотреть результаты.
См. Раздел Настройка инкрементного индекса поэтапного веб-сайта.
(Необязательно) На странице «Правила получения URL-адресов для списка сканирования» выполните одно из следующих действий:
О правилах заголовков для обхода контента
Правила заголовков обхода определяют, как встречающиеся заголовки в веб-контенте перезаписываются до того, как они будут сохранены в поисковом индексе.
Например, вы можете использовать правило перезаписи, чтобы удалить часть заголовка, например название организации. При сканировании веб-сайта встречающиеся заголовки сохраняются во временном буфере.Однако перед добавлением заголовка в этот буфер к нему применяются правила заголовка. По умолчанию поиск по сайту / мерчендайзинг не имеет правил заголовков для сканирования и не изменяет заголовки.
Прежде чем действие правил станет видимым для клиентов, перестройте индекс своего сайта.
Вы можете быстро отменить любые изменения, внесенные в правила заголовков для обхода контента, с помощью функции «Журнал».
Правиламогут состоять из двух основных элементов: RewriteRule и необязательного RewriteCond. Вы можете указать неограниченное количество правил и условий.Порядок этих правил важен, потому что набор правил проходит по циклу правило за правилом. Когда правило совпадает, оно проходит через все (необязательные) соответствующие условия перезаписи. Правила обхода URL указаны следующим образом:
RewriteCond
TestString CondPattern [флаги]
RewriteRule
Замена шаблона [Флаги]
RewriteCond
TestString CondPattern [флаги]
RewriteRule
Замена шаблона [Флаги]
Когда встречается заголовок, поисковый робот пытается сопоставить заголовок с шаблоном каждого правила сканирования.Если шаблон совпадает, механизм перезаписи ищет соответствующие директивы RewriteCond. Если условия отсутствуют, URL-адрес заменяется новым значением, созданным из строки подстановки, и продолжается со следующим правилом в наборе правил. Если условия существуют, они обрабатываются в том порядке, в котором они перечислены. Механизм перезаписи пытается сопоставить шаблон условия (CondPattern) с тестовой строкой (TestString). Если они совпадают, то выполняется следующее условие до тех пор, пока не закончатся доступные условия.Если все условия совпадают, URL-адрес заменяется подстановкой, указанной в правиле. Если условие не выполняется, полный набор условий и соответствующее правило не выполняется.
Введите правила сканирования URL-адресов в текстовое поле и нажмите «Сохранить изменения». Пустые строки и строки комментариев, начинающиеся с символа «#» (решетки), разрешены. Чтобы проверить правила поиска, вы можете ввести тестовый URL-адрес в текстовое поле «Test Rewrite Rules», а затем нажать Test.
Директива RewriteRule
Каждая директива RewriteRule определяет одно правило перезаписи.Правила применяются в том порядке, в котором они перечислены. Правило перезаписи имеет следующую форму:
Замена шаблона RewriteRule [флаги]
Шаблон может быть регулярным выражением POSIX, которое применяется к текущему заголовку. «Текущее название» отличается от исходного, потому что более ранние правила уже согласовали и изменили его.
См. Регулярные выражения.
Вы можете использовать символ «не» («!») В качестве префикса шаблона.Символ «не» позволяет отрицать шаблон, то есть быть истинным, только если текущий заголовок НЕ соответствует шаблону. Символ «не» может использоваться, когда лучше соответствовать отрицательному шаблону, или в качестве окончательного правила по умолчанию. Примечание. В шаблоне нельзя использовать одновременно символ «не» и сгруппированные подстановочные знаки. Кроме того, вы не можете использовать отрицательный шаблон, если строка подстановки содержит $ N.
Вы можете использовать круглые скобки для создания обратной ссылки, на которую можно ссылаться с помощью Substitution и CondPattern.
Замена Заголовок заменяется строкой замены. Строка может содержать следующее:
Обычный текст — текст, который передается без изменений.
Обратные ссылки обеспечивают доступ к сгруппированным частям (внутри скобок) Pattern или CondPattern. Ниже приведены два типа обратных ссылок:
Обратные ссылки RewriteRule
Они соответствуют обратным ссылкам в соответствующем шаблоне RewriteRule и принимают форму $ N (0 <= N <= 9).Мой [[: blank:]] (. *) $ $ {Toupper: $ 1}
RewriteCond Обратные ссылки
Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные Это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг [E]
для получения дополнительной информации о настройке переменных среды.
Функции Это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
ПРИМЕЧАНИЕ
Существует специальная строка для замены: «-», что означает «НЕТ замены». Строка «-» часто используется с флагом C (цепочка), позволяя сопоставить заголовок с несколькими шаблонами до того, как произойдет замена.
Флаги (опционально)
Флаги заключаются в квадратные скобки []
, а несколько флагов разделяются запятыми:
Флаг | Описание |
---|---|
‘последняя | L’ | Последнее правило. Останавливает процесс перезаписи и не применяет никаких дополнительных правил перезаписи. Используйте этот флаг, чтобы предотвратить дальнейшую обработку текущего заголовка. |
‘следующая | N’ | Следующий раунд. Повторно запускает процесс перезаписи (начиная с первого правила перезаписи), используя заголовок из последнего правила перезаписи, а не исходный заголовок. Будьте осторожны, чтобы не создать мертвую петлю. |
‘цепь | C’ | Приковано к следующему правилу. Связывает текущее правило со следующим правилом (которое также может быть связано со следующим правилом и т. Д.). Если правило совпадает, процесс замены продолжается как обычно. Если правило не совпадает, все последующие связанные правила пропускаются. |
‘nocase | NC’ | Нет дела. Делает шаблон без учета регистра (то есть нет разницы между ‘A-Z’ и ‘a-z’), когда шаблон сопоставляется с текущим заголовком. |
‘пропустить | S = num’ | Пропустить следующее правило или правила. Если текущее правило совпадает, этот флаг заставляет механизм перезаписи пропускать следующее число правил в наборе правил. Используйте это для создания псевдо-if-then-else конструкций. Последнее правило предложения then становится skip = N, где N — количество правил в предложении else. (Примечание: это не то же самое, что флаг ‘цепочка | C’!) |
‘env | E = VAR: VAL’ | Установить переменную среды. Создает переменную среды «VAR», для которой установлено значение VAL, где VAL может содержать обратные ссылки регулярных выражений, $ N и% N, которое раскрывается. Вы можете использовать этот флаг более одного раза для установки нескольких переменных. На переменные позже можно будет ссылаться в следующем шаблоне RewriteCond через% {VAR}. Используйте этот флаг для удаления и запоминания информации из заголовков. |
Директива RewriteCond (необязательно)
Директива RewriteCond определяет условие правила.Когда RewriteCond предшествует RewriteRule, правило используется только в том случае, если его шаблон соответствует текущему заголовку и применяются дополнительные условия.
Директивы условий перезаписи имеют следующий вид:
RewriteCond TestString CondPattern [флаги]
TestString — это строка, которая может содержать следующие конструкции:
Обычный текст — текст, который передается без изменений.
Обратные ссылки обеспечивают доступ к сгруппированным частям (внутри скобок) Pattern или CondPattern.Мой [[: blank:]] (. *) $ $ {Toupper: $ 1}
Переменные Это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг [E]
для получения дополнительной информации о настройке переменных среды…
Функции Это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе.
- Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_ ‘остаются без изменений, пробелы переводятся в’ + ‘, а все остальные символы преобразуются в их эквивалент в URL-кодировке% xx.
- unescape преобразует «+» обратно в пробел, а все символы, закодированные в URL% xx, обратно в отдельные символы.
CondPattern — стандартное расширенное регулярное выражение с некоторыми дополнениями.Строка шаблона может начинаться с символа «!» (Восклицательного знака), чтобы указать несовпадающий шаблон. Вместо настоящих строк регулярного выражения вы можете использовать один из следующих специальных вариантов.
ПРИМЕЧАНИЕ
Вы можете поставить перед всеми этими тестами восклицательный знак («!»), Чтобы опровергнуть их смысл.
CondPattern string | Описание |
---|---|
‘ | Лексически меньше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически меньше CondPattern . |
‘> CondPattern’ | Лексически больше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически больше, чем CondPattern . |
‘= CondPattern’ | Лексически равно. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически равна CondPattern , то есть две строки в точности равны (символ за символом). Если CondPattern — это просто «» (две кавычки), это сравнивает TestString с пустой строкой. |
Флаги (опционально)
Флаги заключаются в квадратные скобки []
, а несколько флагов разделяются запятыми:
Флаг | Описание |
---|---|
‘nocase | NC’ | Нет дела. Делает тест нечувствительным. То есть нет никакой разницы между «A – Z» и «a – z» как в расширенной TestString , так и в CondPattern. |
‘или следующий | OR’ | Или следующее условие. Используйте этот флаг для объединения условий правила с локальным ИЛИ вместо неявного И. Без этого флага вам пришлось бы писать условие / правило несколько раз. |
Пример
Предположим, у вас есть корпоративный веб-сайт со стандартным форматом заголовка: «Моя компания», за которым следует дефис, а затем описание страницы (например, «Моя компания — Добро пожаловать» или «Моя компания — Новости»).Моя [[: blank:]] Компания [[: blank:]] — [[: blank:]] (. *)) содержит обратную ссылку (. *)
, которая соответствует содержанию заголовка, следующему за «Моя компания- ». Помните, что окружение части шаблона круглыми скобками () создает обратную ссылку, на которую может ссылаться подстановка. В этом примере подстановка ($ {toupper: $ 1 }) перезаписывает эту обратную ссылку ( $ 1 ) с помощью функции toupper.
Таким образом, название формы «Моя компания — Добро пожаловать» переписывается на «ДОБРО ПОЖАЛОВАТЬ».
Благодарность
Программное обеспечение механизма перезаписи было первоначально разработано Apache Group для использования в проекте HTTP-сервера Apache (https://www.apache.org/).
Добавление правил заголовка сканирования
Вы можете добавить правила заголовков обхода, чтобы указать, как встречающиеся заголовки в веб-контенте перезаписываются перед сохранением в поисковом индексе.
Чтобы добавить правила заголовка сканирования
В меню продукта нажмите Настройки > Правила перезаписи > Правила заголовков для сканирования .
В поле «Правила заголовков для обхода контента» введите нужные правила.
Разрешены пустые строки и строки комментариев, начинающиеся с символа «#» (решетки).
(Необязательно). На странице «Правила заголовков для сканирования» в поле «Правила заголовков для тест. Сканирования» введите тестовый URL, правила поиска которого вы хотите проверить, а затем нажмите Тест .
Нажмите Сохранить изменения .
(Необязательно) Перестройте индекс поэтапного сайта, если хотите предварительно просмотреть результаты.
См. Раздел Настройка инкрементного индекса поэтапного веб-сайта.
(Необязательно) На странице «Правила заголовков для обхода контента» выполните одно из следующих действий:
О правилах URL поиска
ПравилаSearch URL определяют, как должны отображаться URL-адреса в результатах поиска на вашем веб-сайте. Правила работают с полными URL-адресами. Можно управлять любой частью URL-адреса, включая аргументы запроса, в которых часто хранится информация об идентификаторе сеанса.
Обычно правила URL поиска используются для вставки идентификатора сеанса в URL.Однако вы также можете использовать правила URL поиска, чтобы изменить доменное имя, которое отображается вместе с вашими результатами. По умолчанию правила не указаны, и изменение URL-адреса не выполняется.
Правила URL поиска могут состоять из двух основных элементов: RewriteRule и необязательного RewriteCond. Когда URL-адрес включен как часть результата поиска, правила используются для управления им. Вы можете указать неограниченное количество правил и условий для URL поиска. Порядок этих правил важен, потому что набор правил проходит по циклу правило за правилом.Когда правило совпадает, программа перебирает любые (необязательные) соответствующие условия перезаписи. Правила обхода URL указаны следующим образом:
RewriteCond
TestString CondPattern [флаги]
RewriteRule
Замена шаблона [Флаги]
RewriteCond
TestString CondPattern [флаги]
RewriteRule
Замена шаблона [Флаги]
При обработке URL поиск по сайту / мерчендайзинг пытается сопоставить его с шаблоном каждого правила поиска.Если совпадение не удается, механизм перезаписи немедленно прекращает обработку правила и переходит к следующему правилу в наборе. Если шаблон совпадает, механизм перезаписи ищет соответствующие инструкции RewriteCond. Если условий не существует, URL-адрес заменяется новым значением. Это значение создается из строки подстановки и продолжается следующим правилом в наборе правил. Если условия существуют, порядок их перечисления определяется порядком их обработки. Механизм перезаписи пытается сопоставить шаблон условия (CondPattern) с тестовой строкой (TestString).Если они совпадают, то выполняется следующее условие до тех пор, пока не закончатся доступные условия. Если все условия совпадают, URL-адрес заменяется на подстановку, указанную в правиле. Если условие не выполняется, полный набор условий и соответствующее правило не выполняется.
О директиве RewriteRule
Правило перезаписи имеет следующую форму:
RewriteRule
Замена шаблона [Флаги]
Шаблон может быть регулярным выражением POSIX, которое применяется к текущему URL-адресу.«Текущий URL-адрес» может отличаться от исходного URL-адреса, потому что более ранние правила могли уже сопоставить и изменить его.
См. Регулярные выражения.
Вы можете использовать символ «не» («!») В качестве префикса шаблона. Символ «не» позволяет отрицать узор. Другими словами, это верно, только если текущий URL НЕ соответствует шаблону. Вы можете использовать символ «не», когда лучше соответствовать отрицательному шаблону, или в качестве окончательного правила по умолчанию. Обратите внимание, что в шаблоне нельзя использовать одновременно символ «не» и сгруппированные подстановочные знаки.Кроме того, вы не можете использовать отрицательный шаблон, если строка подстановки содержит $ N.
Вы можете использовать круглые скобки для создания обратной ссылки, на которую можно ссылаться с помощью Substitution и CondPattern.
Замена URL-адрес полностью заменяется строкой замены, которая может содержать следующее:
Обычный текст — текст, который передается без изменений.
Обратные ссылки Предоставляет доступ к сгруппированным частям (внутри скобок) Pattern или CondPattern.Мой [[: blank:]] (. *) $ $ {Toupper: $ 1}
RewriteCond Backreferences — они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Функции: это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе .
- Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_ ‘оставлены без изменений; пробелы переводятся в «+»; все остальные символы преобразуются в их эквивалент в кодировке URL% xx.
- unescape преобразует «+» обратно в пробел, а все символы, закодированные в URL% xx, обратно в отдельные символы.
ПРИМЕЧАНИЕ
Существует специальная строка для замены: «-», что означает «НЕТ замены». Строка «-» часто используется вместе с флагом C (цепочка).Он позволяет сопоставить URL-адрес с несколькими шаблонами до того, как произойдет подстановка.
Флаги (опционально)
Флаги заключаются в квадратные скобки []
, а несколько флагов разделяются запятыми:
Флаг | Описание |
---|---|
‘последняя | L’ | Последнее правило. Остановите процесс перезаписи и не применяйте никаких дополнительных правил перезаписи.Используйте этот флаг, чтобы предотвратить дальнейшую обработку текущего URL-адреса. |
‘следующая | N’ | Следующий раунд. Повторно запустите процесс перезаписи (начиная снова с первого правила перезаписи), используя URL-адрес из последнего правила перезаписи (а не исходный URL-адрес). Будьте осторожны, чтобы не создать мертвую петлю! |
‘цепь | C’ | Приковано к следующему правилу. Этот флаг связывает текущее правило со следующим правилом, которое также может быть привязано к следующему правилу и т. Д.Если правило совпадает, процесс замены продолжается как обычно. Если правило не совпадает, все последующие связанные правила пропускаются. |
‘nocase | NC’ | Нет дела. Этот флаг делает шаблон без учета регистра. Другими словами, нет разницы между ‘A-Z’ и ‘a-z’, когда шаблон сопоставляется с текущим URL-адресом. |
‘пропустить | S = num’ | Пропустить следующее правило или правила. Если текущее правило совпадает, этот флаг заставляет механизм перезаписи пропускать следующее число правил в наборе правил. Используйте это для создания псевдо-if-then-else конструкций. Последнее правило предложения then становится skip = N, где N — количество правил в предложении else. (Примечание: это не то же самое, что флаг ‘цепочка | C’!) |
‘env | E = VAR: VAL’ | Установить переменную среды. Этот флаг создает переменную среды «VAR», установленную на значение VAL.VAL может содержать обратные ссылки на регулярные выражения, $ N и% N, которые раскрываются. Вы можете использовать этот флаг более одного раза для установки нескольких переменных. Ссылки на переменные могут быть позже отменены в следующем шаблоне RewriteCond через% {VAR}. Используйте этот флаг для удаления и запоминания информации из URL-адресов. |
Обратите внимание на то, что правила перезаписи Store и Retrieve Rewrite Rules имеют общие значения переменных. Из-за этого вы можете установить переменную в чувствительное ко времени значение sessionid, когда встроенный URL-адрес обнаружен и сохранен. /] *) (./] *) , который соответствует всем символам между «https: //» и первым «/» в URL-адресе. Шаблон также содержит вторую обратную ссылку (. *) , которая соответствует всем оставшимся символам в URL-адресе.
Подстановка (https: // $ {tolower: $ 1} $ 2)
указывает поисковой системе переписать URL-адрес, используя функцию tolower для первой обратной ссылки (https: // ** $ {tolower: $ 1 **} $ 2)
, оставив остальную часть URL-адреса нетронутой (https: // $ {tolower: $ 1} * $ 2 *)
.
Следовательно, URL-адрес формы https://www.MyDomain.com/INTRO/index.Html
переписывается как https://www.mydomain.com/INTRO/index.Html
Директива RewriteCond (необязательно)
Директива RewriteCond определяет условие правила. Когда RewriteCond предшествует RewriteRule, правило используется только в том случае, если его шаблон соответствует текущему заголовку и применяются дополнительные условия.
Директивы условий перезаписи имеют следующий вид:
RewriteCond
TestString CondPattern [флаги]
TestString — это строка, которая может содержать следующие конструкции:
Обычный текст: текст, который передается без изменений.Мой [[: blank:]] (. *) $ $ {Toupper: $ 1}
Обратные ссылки RewriteCond Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные Это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг RewriteRule [E]
для получения дополнительной информации о настройке переменных.
ПРИМЕЧАНИЕ
Правила перезаписи обычно используют переменные.Все параметры CGI из текущего URL-адреса автоматически преобразуются в переменные. Например, поисковый URL "https://search.atomz.com/search/?sp_a=sp00000000&sp_q="Product"&session=1234&id=5678"
автоматически предоставит четыре переменные, на которые можно ссылаться в правилах перезаписи. В этом примере одна переменная называется «сеанс» и имеет значение «1234», а другая переменная называется «id» и ее значение — «5678». (Две другие переменные: sp_a
и sp_q
.) Вы должны передать все необходимые переменные как скрытые поля из формы поиска на вашей веб-странице. В этом примере вы должны передать значения «session» и «id», которые идентифицируют пользователя веб-сайта, выполняющего поиск. Чтобы передать скрытое поле в форму поиска, используйте тег типа
.
Функции Это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе . Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_’ остаются без изменений, пробелы переводятся в ‘+’, а все остальные символы преобразуются в их эквивалент в URL-кодировке% xx.
- unescape преобразует «+» обратно в пробел, и все символы URL% xx кодируются обратно в одиночные символы.
CondPattern — стандартное расширенное регулярное выражение с некоторыми дополнениями.Строка шаблона может начинаться с символа «!» (Восклицательного знака), чтобы указать несовпадающий шаблон. Вместо настоящих строк регулярного выражения вы можете использовать один из следующих специальных вариантов.
Вы можете префикс всех этих тестов с помощью восклицательного знака («!»), Чтобы опровергнуть их значение.
CondPattern string | Описание |
---|---|
‘ | Лексически меньше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически меньше CondPattern . |
‘> CondPattern’ | Лексически больше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически больше, чем CondPattern . |
‘= CondPattern’ | Лексически равно. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически равно CondPattern . То есть две строки в точности равны (символ за символом). Если CondPattern — это просто «» (две кавычки), это сравнивает TestString с пустой строкой. |
Флаги (опционально)
Флаги заключаются в квадратные скобки []
, а несколько флагов разделяются запятыми:
‘nocase | NC’ (без регистра): делает тест нечувствительным к регистру. Другими словами, нет никакой разницы между «A-Z» и «a-z» как в расширенном TestString , так и в CondPattern .
‘ornext | OR’ (или следующее условие): используйте это, чтобы объединить условия правила с локальным OR вместо неявного AND.Без этого флага вам пришлось бы писать условие / правило несколько раз.
Пример
Некоторые веб-страницы присваивают переменную CGI «sessionid», когда клиент впервые приходит на сайт. Эта переменная используется для идентификации клиента, и, когда покупатель просматривает сайт, переменная передается. Поскольку поисковый робот выглядит как покупатель вашего сайта, ему присваивается номер sessionid. Поисковый робот поддерживает это единственное значение «sessionid», даже если вторая страница сайта пытается присвоить новое значение.& #] + (. *) $ $ 1 sessionid =% {sessionid} 2 доллара
Шаблон RewriteRule содержит две обратные ссылки: (. +) И (. *). Первая обратная ссылка соответствует всем символам перед «sessionid =». Вторая обратная ссылка соответствует всем символам после завершающего идентификатора сеанса ‘&’ или ‘#’.
Шаблон подстановки перезаписывает URL-адрес с использованием первой обратной ссылки, за которой следует строка «sessionid =», за которой следует значение переменной идентификатора сеанса, которое было передано в качестве параметра CGI в URL-адресе, за которым следует вторая обратная ссылка. ($ 1sessionid =% {sessionid} $ 2)
.
RewriteCond проверяет переменную sessionid (% {sessionid})
. Если он содержит хотя бы один символ (. +), То RewriteRule соответствует.
Таким образом, если поисковый запрос — "https://search.atomz.com/search/?sp_a=sp99999999&sp_q=word&sessionid=5678"
, то все URL-адреса результатов поиска будут переписаны так, что значение «sessionid» будет равно « 5678 »вместо значения« sessionid », которое обнаружил поисковый робот при сканировании вашего сайта и сохранении ссылок.
Благодарность
Программное обеспечение механизма перезаписи было первоначально разработано Apache Group для использования в проекте HTTP-сервера Apache (https://www.apache.org/).
Добавление правил URL поиска
Вы можете добавить правила URL для поиска, чтобы указать, как будут отображаться URL-адреса в результатах поиска на вашем веб-сайте. Правила работают с полными URL-адресами. Вы можете управлять любой частью URL-адреса, включая аргументы запроса, в которых часто хранится информация об идентификаторе сеанса.
Для добавления правил URL поиска
В меню продукта щелкните Настройки > Правила перезаписи > Правила поиска URL-адресов .
В поле Search URL Rules введите нужные правила.
Разрешены пустые строки и строки комментариев, начинающиеся с символа «#» (решетки).
(Необязательно) На странице «Правила URL-адреса поиска» в поле «Правила URL-адреса тестового поиска» введите тестовый URL-адрес, правила сканирования которого вы хотите проверить, а затем щелкните Тест .
Нажмите Сохранить изменения .
(Необязательно) Перестройте индекс поэтапного сайта, если хотите предварительно просмотреть результаты.
См. Раздел Настройка инкрементного индекса поэтапного веб-сайта.
(Необязательно) На странице «Правила поиска URL-адресов» выполните одно из следующих действий:
О правилах поиска по заголовкам
Правила поискаопределяют способ отображения заголовков в результатах поиска на вашем веб-сайте. Любой частью заголовка можно управлять.
Правило перезаписи может использоваться для удаления части заголовка, например, названия организации. По умолчанию поиск по сайту / мерчендайзинг не имеет правил заголовков и не меняет заголовков.
Правила заголовка могут состоять из двух основных элементов: RewriteRule и необязательного RewriteCond. Может быть указано неограниченное количество правил и условий. Порядок этих правил важен, потому что набор правил проходит по циклу правило за правилом. Когда правило совпадает, программа перебирает любые (необязательные) соответствующие условия перезаписи. Правила поискового заголовка задаются следующим образом:
RewriteCond
TestString CondPattern [флаги]
RewriteRule
Замена шаблона [Флаги]
RewriteCond
TestString CondPattern [флаги]
RewriteRule
Замена шаблона [Флаги]
Когда встречается заголовок, поиск по сайту / мерчандайзинг пытается сопоставить его с шаблоном каждого правила сканирования.Если шаблон совпадает, механизм перезаписи ищет соответствующие директивы RewriteCond. Если условия отсутствуют, Заголовок заменяется новым значением, созданным из строки Подстановки, и продолжается следующим правилом в наборе правил. Если условия существуют, они обрабатываются в том порядке, в котором они перечислены. Механизм перезаписи пытается сопоставить шаблон условия (CondPattern) с тестовой строкой (TestString). Если они совпадают, то выполняется следующее условие до тех пор, пока не закончатся доступные условия.Если все условия совпадают, URL-адрес заменяется на подстановку, указанную в правиле. Если условие не выполняется, полный набор условий и соответствующее правило не выполняется.
Директива RewriteRule
Каждая директива RewriteRule определяет одно правило перезаписи. Правила применяются в том порядке, в котором они перечислены. Правило перезаписи имеет следующую форму:
Замена шаблона RewriteRule [флаги]
Шаблон Регулярное выражение POSIX, которое применяется к текущему заголовку.«Текущее название» может отличаться от исходного, потому что более ранние правила могли уже соответствовать и изменять его.
См. Регулярные выражения.
Вы можете использовать символ «не» («!») В качестве префикса шаблона. Символ «не» позволяет отрицать узор. То есть быть правдой, только если текущий заголовок НЕ соответствует шаблону. Символ «не» может использоваться, когда лучше соответствовать отрицательному шаблону, или в качестве окончательного правила по умолчанию. Примечание. В шаблоне нельзя использовать одновременно символ «не» и сгруппированные подстановочные знаки.Кроме того, вы не можете использовать отрицательный шаблон, если строка подстановки содержит $ N.
Вы можете использовать круглые скобки для создания обратной ссылки, на которую можно ссылаться с помощью Substitution и CondPattern.
Замена Заголовок полностью заменяется строкой замены, которая может содержать следующее:
Обычный текст — текст, который передается без изменений.
Обратные ссылки Обеспечивают доступ к сгруппированным частям (внутри скобок) Pattern или CondPattern.Мой [[: blank:]] (. *) $ $ {Toupper: $ 1}
** RewriteCond Backreferences ** Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные Это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг [E] для получения дополнительной информации о настройке переменных среды. Переменные также могут быть определены в форме поиска, которая генерировала результаты поиска.
Функции Это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION равно:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
Существует специальная строка для замены: «-», что означает «НЕТ замены». Строка «-» часто используется в сочетании с флагом C (цепочка), позволяя сопоставить заголовок с несколькими шаблонами до того, как произойдет замена.
Флаги (опционально)
Флаги заключаются в квадратные скобки []
, а несколько флагов разделяются запятыми:
Флаг | Описание |
---|---|
‘последняя | L’ | Последнее правило. Остановите процесс перезаписи и не применяйте никаких дополнительных правил перезаписи. Используйте этот флаг, чтобы предотвратить дальнейшую обработку текущего заголовка. |
‘следующая | N’ | Следующий раунд. Повторно запустите процесс перезаписи (начиная снова с первого правила перезаписи), используя заголовок из последнего правила перезаписи (а не исходный заголовок!). Будьте осторожны, чтобы не создать мертвую петлю. |
‘цепь | C’ | Приковано к следующему правилу. Этот флаг связывает текущее правило со следующим правилом (которое также может быть привязано к следующему правилу и т. Д.).Если правило совпадает, процесс замены продолжается как обычно. Если правило не совпадает, все последующие связанные правила пропускаются. |
‘nocase | NC’ | Нет дела. Этот флаг делает шаблон без учета регистра. То есть нет никакой разницы между ‘A-Z’ и ‘a-z’, когда шаблон сопоставляется с текущим заголовком. |
‘пропустить | S = num’ | Пропустить следующее правило или правила. Если текущее правило совпадает, этот флаг заставляет механизм перезаписи пропускать следующее число правил в наборе правил. Используйте это для создания псевдо-if-then-else конструкций. Последнее правило предложения then становится skip = N, где N — количество правил в предложении else. (Это не то же самое, что флаг ‘цепочка | C’!) |
‘env | E = VAR: VAL’ | Установить переменную среды. Этот флаг создает переменную среды «VAR», установленную на значение VAL, где VAL может содержать обратные ссылки регулярных выражений, $ N и% N, которые будут расширены.Вы можете использовать этот флаг более одного раза для установки нескольких переменных. На переменные позже можно будет ссылаться в следующем шаблоне RewriteCond через% {VAR}. Используйте этот флаг для удаления и запоминания информации из заголовков. |
Директива RewriteCond (необязательно)
Директива RewriteCond определяет условие правила. Когда RewriteCond предшествует RewriteRule, правило используется только в том случае, если его шаблон соответствует текущему заголовку и применяются дополнительные условия.
Директивы условий перезаписи имеют следующий вид:
RewriteCond TestString CondPattern [флаги]
TestString — это строка, которая может содержать следующие конструкции:
Обычный текст — текст, который передается без изменений.Мой [[: blank:]] (. *) $ $ {Toupper: $ 1}
Обратные ссылки RewriteCond Они соответствуют обратным ссылкам в последнем совпавшем RewriteCond CondPattern и принимают форму% N (0 <= N <= 9).
Переменные Это переменные формы% {NAME_OF_VARIABLE}, где NAME_OF_VARIABLE может быть строкой для имени определенной переменной. См. Флаг [E]
для получения дополнительной информации о настройке переменных среды. Переменные также могут быть определены в форме поиска, которая генерировала результаты поиска.
Функции Это функции формы $ {NAME_OF_FUNCTION: key}, где NAME_OF_FUNCTION равно:
- tolower превращает все символы в key в нижний регистр.
- toupper превращает все символы в , ключ в верхнем регистре.
- Escape URL-кодирует все символы в ключе .
- Символы ‘a’ … ‘z’, ‘A’ … ‘Z’, ‘0’ … ‘9’, ‘*’, ‘-‘, ‘.’, ‘/’, ‘@’ И ‘_ ‘остаются без изменений, пробелы переводятся в’ + ‘, а все остальные символы преобразуются в их эквивалент в URL-кодировке% xx.
- unescape преобразует «+» обратно в пробел, а все символы, закодированные в URL% xx, обратно в отдельные символы.
Существует специальная строка для замены: «-», что означает «НЕТ замены». Строка «-» часто используется в сочетании с флагом C (цепочка), позволяя сопоставить URL-адрес с несколькими шаблонами до того, как произойдет подстановка.
CondPattern Стандартное расширенное регулярное выражение с некоторыми дополнениями. Строка шаблона может начинаться с символа «!» (Восклицательного знака), чтобы указать несовпадающий шаблон.Вместо настоящих строк регулярного выражения вы можете использовать один из следующих специальных вариантов.
Все эти тесты также могут иметь префикс восклицательного знака («!»), Чтобы опровергнуть их смысл.
CondPattern string | Описание |
---|---|
‘ | Лексически меньше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString .Истинно, если TestString лексически меньше CondPattern . |
‘> CondPattern’ | Лексически больше. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически больше, чем CondPattern . |
‘= CondPattern’ | Лексически равно. Обрабатывает CondPattern как простую строку и лексически сравнивает ее с TestString . Истинно, если TestString лексически равно CondPattern . То есть две строки в точности равны (символ за символом). Если CondPattern — это просто «» (две кавычки), это сравнивает TestString с пустой строкой. |
Флаги (опционально)
Флаги заключаются в квадратные скобки []
, а несколько флагов разделяются запятыми:
Флаг | Описание |
---|---|
‘nocase | NC’ (без футляра) | Делает тест нечувствительным.То есть нет никакой разницы между ‘A-Z’ и ‘a-z’ как в расширенном TestString , так и в CondPattern . |
‘ornext | OR’ (или следующее условие) | Используйте это, чтобы объединить условия правила с локальным ИЛИ вместо неявного И. Без этого флага вам пришлось бы писать условие / правило несколько раз. |
Пример
Предположим, у вас есть корпоративный веб-сайт со стандартным форматом заголовка: «Моя компания», за которым следует дефис, а затем описание страницы (например, «Моя компания — Добро пожаловать» или «Моя компания — Новости»).Моя [[: blank:]] Компания [[: blank:]] — [[: blank:]] (. *)) содержит обратную ссылку (. *)
, которая соответствует содержанию заголовка, следующему за «My Компания-«. Помните, что окружение части шаблона круглыми скобками () создает обратную ссылку, на которую может ссылаться подстановка. В этом примере подстановка ($ {toupper: $ 1 }) перезаписывает эту обратную ссылку ( $ 1 ) с помощью функции toupper.
Таким образом, название формы «Моя компания — Добро пожаловать» переписывается на «ДОБРО ПОЖАЛОВАТЬ».
Благодарность
Программное обеспечение механизма перезаписи было первоначально разработано Apache Group для использования в проекте HTTP-сервера Apache (https://www.apache.org/).
Добавление правил заголовка поиска
Вы можете добавить правила заголовков для поиска, чтобы указать, как будут отображаться заголовки в результатах поиска на вашем веб-сайте. Вы можете управлять любой частью заголовка.
Для добавления правил заголовка поиска
В меню продукта щелкните Настройки > Правила перезаписи > Поиск правил заголовков .
В поле Search Title Rules введите нужные правила.
Разрешены пустые строки и строки комментариев, начинающиеся с символа «#» (решетки).
Добавить комментарий