- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Дано:
Задача:
/page.htm -> /page/
/page.htm#5bla -> /page/#5bla
Помогите двоечнику :-)
В самом начале:
Redirect 301 /page.htm /page/
Если вместо "page.htm" может быть "что_угодно.htm", то после RewriteBase /
RewriteRule ^([^/]+)\.htm /$1/ [R=301,L]
А вторая задача с помощью сервера нерешабельна, т.к. анкор (то, что после "#") на сервер не передаётся. Т.е. если это позарез необходимо, то нужно делать с помощью javascript.
Редактируется...
А если так?
/page.htm#5bla -> /page/
Браузеры передают в запросе только "/page.htm" и всё.
Поэтому единственным вариантом будет сделать таки эту страничку, и на ней ява-скриптом сделать нужный редирект. Но он (редирект) не будет читаться поисковиками.
В общем, строка
решила обе задачи. Как ни странно :-) Все работает и с #, и без.
Спасибо.
Отлично. Только проверьте на всякий случай, возможно не все браузеры передают анкор при редиректе :)
Только IE теряет анкор, но меня это нисколько не парит :-)
может сможете и мне помочь?
у меня возникла следующая проблема, проставили внешую ссылку с пробелом (исправить нет возможности), таким образом ссылка приобрела вид www.site.ru/dir.html%20 При переходе по такой ссылке сайт выдает 404 ошибку.
Задача с помощью редиректа, перекидывать с этой страницы на нормальную.
Обычные способы редиректа не помогли.
enton, попробуйте такой вариант
RewriteRule ^(.+)\ $ http://%{HTTP_HOST}/$1 [R=301,L]
спасибо, помогло!