Как я могу перенаправить и переписать свои URL-адреса с помощью файла .htaccess?
Что нужно изменить в приведенных ниже примерах?
Приведенные ниже примеры можно ввести в ваш файл .htaccess точно так, как показано на рисунке. Просто убедитесь, что вы изменили фактический путь к файлу, чтобы файл .htaccess знал, где он находится. Кроме того, если вы видите домен example.com, измените это на свое собственное доменное имя.
Перенаправление всех URL-адресов на новый сайт
В следующих двух примерах все URL-адреса вашего текущего веб-сайта перенаправляются на второй веб-сайт. Это полезно после переноса вашего сайта на новое доменное имя.
Вариант №1
Redirect 301 / https://example.com/
Вариант №2
В этом примере ваш старый сайт с именем example.com будет перенаправлять с сохранением всех URL-адресов на новый сайт с именем dreamhostexample.com.
RewriteEngine On RewriteCond %{HTTP_HOST} ^example.com$ [OR] RewriteCond %{HTTP_HOST} ^www.example.com$ RewriteRule (.*)$ https://www.dreamhostexample.com/$1 [R=301,L]
Перенаправление одного URL-адреса
Использование перенаправления в файле .htaccess позволяет перенаправлять пользователей со старой страницы на новую страницу без необходимости сохранения старой страницы. Например, если вы используете index.html как ваш индексный файл, а затем позже переименуйте index.html чтобы home.html , вы могли бы настроить перенаправление для отправки пользователей с index.html чтобы home.html . Например:
Перенаправление на файл локального сайта
Redirect /path/to/old/file/old.html /path/to/new/file/new.html
Перенаправление на файл внешнего сайта
Redirect /path/to/old/file/old.html https://www.example.com/new/file/new.html
Первый путь
Первый путь к старому файлу должен быть локальным путем UNIX, а не полным путем. Итак, если файл .htaccess находится в каталоге /example.com , вы бы не включали /home/username/example.com в локальный путь UNIX. Первый / представляет собой example.com каталог. Если бы старый файл находился в этом каталоге, вы бы следовали за / со старым именем файла.
Второй путь
Второй путь к новому файлу может быть локальным путем UNIX, но также может быть полным URL-адресом для ссылки на страницу на другом сервере или на том же сервере.
Примеры перенаправлений
Перенаправление из каталога в HTML-файл
RedirectMatch 301 ^/blog/about /blog/about.html
Перенаправление с index.html файл в другой каталог
Redirect /index.html /new/
Перенаправление с index.html на default.html
Redirect /index.html /default.html
Перенаправление локального /частного каталога в частный каталог другого сайта
Redirect /private/ https://www.example.com/private/
Загрузите gif-файл с другого сайта
Redirect /img/logo.gif https://www.example.com/images/logo.gif
Использование регулярных выражений
Если вы хотите использовать регулярное выражение для перенаправления чего-либо, используйте директиву RedirectMatch:
RedirectMatch "^/oldfile\.html/?$" "https://example.com/newfile.php"
Перенаправление сообщений об ошибках
Вы также можете перенаправить 404 ошибки. Вместо того, чтобы выдавать страницу 404, это перенаправляет на домашнюю страницу веб-сайта.
ErrorDocument 404 https://example.com/
Перенаправление старого каталога в новый каталог
Это перенаправляет файлы из старого каталога (/blog/archives) в новый каталог (/archives). Для функционирования файл должен существовать в новом каталоге.
RewriteRule ^blog/archives/(.*)$ /newarchives/$1 [R=301,NC,L]
Перенаправление старого каталога в домашний каталог
Это перенаправляет файлы из старого каталога (/blog/archives) в домашний каталог.
- Если вы добавляете определенный файл (example.com/blog/archives/test.html ) в конце концов, он должен существовать в домашнем каталоге для загрузки.
- Если посещается только подкаталог, загружается домашний каталог. Если вы добавили индексный файл (например, index.html ), он загрузится.
RewriteRule ^blog/archives/(.*)$ /$1 [R=301,NC,L]
Перенаправлять несуществующие страницы на index.php
Если посетитель пытается получить доступ к несуществующей странице, ему выдается сообщение об ошибке 404. Вместо этого вы можете перенаправить любой запрос на несуществующую страницу на свой index.php файл (или любой индексный файл), добавив следующий код в свой .htaccess:
Options +SymLinksIfOwnerMatch RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
Если ваша индексная страница не index.php , просто измените последнюю строку на ваш фактический индексный файл. Затем посетитель перенаправляется обратно на вашу домашнюю страницу.
Автоматическая загрузка подкаталога
В этом примере URL-адрес КОРНЕВОГО домена перенаправляется в любой подкаталог. В этом примере он автоматически загружается example.com/subdir1:
RewriteEngine on RewriteRule ^$ /subdir1/ [L]
Принудительное использование www в URL-адресе
RewriteEngine On RewriteCond %{HTTP_HOST} ^example.com RewriteRule (.*) https://www.example.com/$1 [R=301,L]
Удаление www в URL-адресе
RewriteEngine On RewriteCond %{HTTP_HOST} ^www.example.com RewriteRule (.*) https://example.com/$1 [R=301,L]
Переписывание URL-адреса
В этом примере URL-адрес переписывается на другой URL-адрес. Это переписывает example.com/1.html чтобы example.com/abc.php?id=1 .
Options +FollowSymLinks RewriteEngine On RewriteRule ^([0-9]+).html /abc.php?id=$1 [QSA,L]
Ниже приведены пояснения к приведенным выше правилам:
([0-9]+) позволяет использовать любую цифру 1 или более раз.
([a-z-]*) допускается использование любой строчной буквы, плюс “-” для разделения слов, 0 или более раз. Если вы хотите, чтобы он также поддерживал верхний регистр, используйте “([a-zA-Z-]*). Например: RewriteRule ^place/([a-zA-Z-]*).html /place/abc.php?id=$1 [QSA,L]
[QSA,L] добавляет это к строке вашего внутреннего скриптового запроса и делает его последним выполненным правилом перезаписи.
После использования этого метода вы можете получить веб-страницу с любым типом адреса. Это удобно для модернизации веб-сайта, который не был разработан с учетом mod_rewrite. Это хорошо, потому что не уничтожает никаких закладок, сохраненных на компьютерах пользователей.
Просмотрите следующую ссылку для получения дополнительной информации и примеров о mod-rewrite:
Переписывание несуществующих ссылок на index.php
Следующее перенаправляет все ссылки на несуществующие файлы или папки на index.php . Однако, если файл или каталог действительно существуют, он загружается нормально:
RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
Источник: help.dreamhost.com
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-03-13 » Стратегии SEO на 2024 год
- 2024-03-13 » Как использовать анимацию с помощью JavaScript-библиотеки GSAP
- 2024-03-13 » Использование GSAP 3 для веб-анимации
- 2024-03-13 » Cогласование топографической съёмки с эксплуатирующими организациями
- 2024-02-19 » Теряются лиды? Как настроить сквозную аналитику
- 2024-02-17 » Мерч и IT: на что обратить внимание в 2024 году
- 2024-02-16 » Копируем с RSync: основные примеры синхронизации файлов
- 2024-02-15 » Лучшие noCode AI платформы для создания диалоговых ботов
- 2024-02-14 » Факторы ранжирования Google 2024 — исследование Semrush
- 2024-02-12 » Перенос сайта на другой хостинг
- 2024-02-05 » В России сформирован реестр хостинг-провайдеров
- 2024-02-04 » Использование SSH для подключения к удаленному серверу Ubuntu
- 2024-02-03 » Подключаемся к серверу за NAT при помощи туннеля SSH. Простая и понятная инструкция
- 2024-02-02 » Настройка CI/CD для Gitlab-репозитория: схемы и гайд по шагам
- 2024-02-01 » GitLab CI Pipeline. Запуск сценария через SSH на удаленном сервере
- 2024-01-29 » Introduction to GitLab’s CI/CD for Continuous Deployments
- 2024-01-26 » Настройка GitLab CI/CD
- 2024-01-25 » Установка shell gitlab runner
- 2024-01-25 » Установка и регистрация gitlab-runner в docker контейнере
- 2024-01-25 » Переменные Gitlab-Ci
- 2024-01-25 » Настройка CI/CD в GitLab для синхронизации проекта с веб-серверами
- 2024-01-25 » Копирование файлов scp
- 2024-01-18 » Современная обработка ошибок в PHP
- 2024-01-18 » Пример шаблона проектирования MVC в PHP
- 2024-01-18 » Мифический человеко-DevOps
- 2023-12-28 » Google подвел итоги 2023 года в поиске
- 2023-12-28 » 5 ошибок отдела продаж, из-за которых вы теряете клиентов
- 2023-12-28 » Американский суд признал монополию Google на рынках дистрибуции Android-приложений
- 2023-12-28 » Хостинг-провайдер GoDaddy перестанет оказывать услуги пользователям из России
- 2023-12-28 » ТОП-5 методов юзабилити-исследований. Разбор слабых и сильных сторон
"Успеха в ближайшем десятилетии добьются только те компании, которые сумеют реорганизовать свою работу с помощью электронного инструментария. Только это позволит им быстро принимать правильные решения, предпринимать эффективные действия и поддерживать тесные плодотворные связи со своими клиентами." |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.