<MyRusakov.ru />

WordPress 6 с Нуля до Гуру

WordPress 6 с Нуля до Гуру

Этот курс научит Вас созданию самых разных сайтов на самой популярной в мире CMS - WordPress. Вы увидите установку и настройку локального сервера, разбор каждой настройки, каждой кнопки и каждого пункта меню в панели WordPress.

Также Вы получите и всю практику, поскольку прямо в курсе с нуля создаётся полноценный Интернет-магазин, который затем публикуется в Интернете. И всё это прямо на Ваших глазах.

Помимо уроков к курсу идут упражнения для закрепления материала.

И, наконец, к курсу идёт ценнейший Бонус по тому, как используя ChatGPT и создавая контент для сайта, можно выйти на пассивный доход. Вы наглядно увидите, как зарегистрироваться в ChatGPT (в том числе, и если Вы из России), как правильно выбрать тему для сайта, как правильно генерировать статьи для него(чтобы они индексировались поисковыми системами) и как правильно монетизировать трафик на сайте.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Как удалить/добавить слэш в конце URL через .htaccess

Как удалить/добавить слэш в конце URL через .htaccess

Наверняка, многие из Вас понимают, что в большинстве случаев "http://mysite.ru/dir" и "http://mysite.ru/dir/" откроют одно и то же. Но это лишь в большинстве случаев, а не всегда. Если идёт обработка REQUEST_URI через PHP, то там может иметь огромное значение наличие или отсутствия слэша в конце URL. И очень важно привести весь сайт к единому стандарту, чтобы было либо со слэшем на конце, либо без. Вот как удалить слэш на конце URL через .htaccess, а также как его добавить, я расскажу в этой статье.

Я приведу 2 кода, один всегда удаляет слэш на конце URL, а другой всегда добавляет. Начнём с 1-го варианта:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301]

Теперь если пользователь введёт "http://mysite.ru/dir/" его автоматически перенаправит на "http://mysite.ru/dir". Разумеется, все GET-параметры сохранятся. Например, если пользователь вводил: "http://mysite.ru/dir/?a=5&b=7", то его перенаправит по такому адресу "http://mysite.ru/dir?a=5&b=7".

А сейчас давайте рассмотрим вариант, когда нам обязательно нужен слэш в конце URL, то есть чтобы при вводе "http://mysite.ru/dir" был автоматический переход на "http://mysite.ru/dir/":

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

С этим кодом в .htaccess слэш будет добавляться автоматически в конце URL.

Теперь Вы знаете, как удалять и добавлять слэш в конце URL через .htaccess. И Вам нужно лишь определиться, какой вариант Вам больше нравится, потому что никакой принципиальной разницы между ними нет.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (13):

malevany malevany 22.12.2012 15:18:02

Скажите, а можно через ".htaccess" удалить расширения файлов, к примеру было mysite.php а стало просто mysite?

Ответить

Admin Admin 22.12.2012 18:13:14

RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L]

Ответить

malevany malevany 24.12.2012 00:14:51

Огромное спасибо!

Ответить

malina95 malina95 17.01.2013 21:24:02

Здравствуйте, а как убрать расширение файла и добавить слеш в конце? Делаю так RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^www.malinichev.ru$ [NC] RewriteRule ^(.*)$ http://malinichev.ru/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*[^/])$ $1/ [L,R=301] RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L] но получается malinichev.ru/pass/.php/ как сделать нормально? Скажите пожалуйста

Ответить

praktik_man praktik_man 22.01.2014 19:24:56

Добрый день. Была такая проблема, слеш на конце ссылок. Все сделал как вы написали..все работает. Но перестало заходить в админку. Joomla. там видимо на конце тоже слеш. Как быть в таком случае?

Ответить

tikkiwiki tikkiwiki 23.01.2014 11:48:39

Как быть в таком случае? Не использовать CMS.

Ответить

komuk komuk 20.05.2015 00:42:40

"На этой странице обнаружена циклическая переадресация" круто работает - не работает!

Ответить

fircus fircus 12.10.2015 13:10:59

Скажите, а как мне добавить слеш в конце для opencart, данный код не работает

Ответить

webmir webmir 18.10.2015 13:15:26

Здравствуйте. Подскажите пожалуйста в следующей ситуации: Есть вёрстка html5+CSS Первоначально была задача, избавиться через .htaccess от расширения php на конце URL Для этого прописал в .htaccess следующее: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^.*$ $0.php [L,QSA] RewriteCond %{THE_REQUEST} ([^\s]*)\.php(\?[^\s]*)? RewriteRule (.*) %1 [R=301,L] Всё заработало отлично! Но, при постепенном наполнении сайта контентом возникла следующая ситуация: Есть страница http://мойсайт/razdel1 Получить для дочерней страницы родителем которой является razdel1 новый URL допустим http://мойсайт/razdel1/katalog Для этого в корневой директории сайта создаю разумеется директорию razdel1 в неё копирую индексный файл, и меняю основной контент, после чего переименовываю файл под таким именем katalog.php На выходе я получаю мою новую страницу http://мойсайт/razdel1/katalog и всё отлично на конце нет слэша изначально это добивалось. Но пеерстала работать старница под этим URL http://мойсайт/razdel1 Точнее открывается содержимо директории razdel1 а мне нужно чтобы открывался по прежнему файл из осноной директории razdel1.php Посоветуйте что можно сделать чтобы открывались обе страницы по желаемым мне URL адресам Пробовал вариант когда в директории razdel1 создаю индексный файл и он открывает всё верно, и вторая новая страница работает, но открытие этой страницы http://мойсайт/razdel1 содержит на конце слэш а он по всему сайту не нужен… как в таком случае от него можно избавиться, и при этом переадресация с .php на без слэша тоже сохранилась?

Ответить

KuleshoffSERVic KuleshoffSERVic 27.11.2015 09:47:46

Здравствуйте! Подскажите, пожалуйста, как сделать исключения для страниц с Get параметрами: т.е., везде на сайте со слешем в конце url, а на страницах с Get параметрами — без. Например: www.site.ru/catalog/ и www.site.ru/login (уже без слеша), чтобы можно было добавлять страницы в такие исключения. Спасибо!

Ответить

tuktcbfc tuktcbfc 19.03.2016 12:51:55

Добрый день. Подскажите, что может быть не так - использовал ваши рекомендации по удалению слеша. Результат такой: www.site.ru/catalog, а вот для главной такой - www.site.ru/ Не убирается слеш индексной страницы.

Ответить

creator creator 26.07.2019 22:29:29

Тя кто моды учил писать!? Не парь людям мозги, чтоб они потом сайты не лопатили, искали ошибку. НАРОД, КТО JOOMLA ИСПОЛЬЗУЕТ !!! Не вздумайте вставить эту ахинею, если у вас регистрация присутствует!!! RewriteCond %{HTTP_HOST} (.*) RewriteCond %{REQUEST_URI} /$ [NC] RewriteRule ^(.*)(/)$ $1 [L,R=301]

Ответить

samvel29 samvel29 23.05.2020 22:25:38

Ребят, скажите, а реально сделать, чтобы http://site.ru/contacts.php открывался как http://site.ru/contacts/ Т.е ссылка то выглядит как ссылка на директорию contacts, но это файл. Или по старинке в папку contacts поместить index.php?

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.