Форум программистов, компьютерный форум, киберфорум
Наши страницы
Apache, htaccess
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Eugene-nsk
29 / 29 / 8
Регистрация: 27.07.2014
Сообщений: 185
1

Htaccess и ЧПУ: можно ли скрыть id в адресной строке браузера?

18.08.2014, 01:20. Просмотров 1744. Ответов 5
Метки нет (Все метки)

Сейчас все адреса страниц на сайте выглядят таким образом:

/100/ochen-interesnaya-stranica/

Обеспечивается подобный ЧПУ обычной директивой в htaccess:

RewriteRule ^(.*)/(.*)/$ index.php?id=$1&title=$2 [L]

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

Т.е. index.php?id=100&title=ochen-interesnaya-stranica равно /100/ochen-interesnaya-stranica/

Для чистоты URL я хочу исключить отображение id в адресной строке браузера, оставив лишь значение title. Однако при этом id-шник мне необходим. Объясняю, для чего. Сейчас идентификатором страницы на сайте является id в базе данных, при этом заголовок у страницы может меняться, но содержимое всегда остается тем же самым. Т.е. если человек сделал ссылку с другого сайта на страницу /100/ochen-interesnaya-stranica/, а администратор сайта изменил ее название на /100/ochen-interesnaya-stranica-otradaktirovana/, то обе ссылки будут отображать один и тот же контент. Если же убрать id-шник, то это будут 2 абсолютно разные страницы и при редактировании заголовка первоначальная ссылка будет битая.

Можно ли сохранять в адресной строке типа /ochen-interesnaya-stranica/ id-шник страницы, чтобы потом его оттуда выудить?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.08.2014, 01:20
Ответы с готовыми решениями:

Не могу разобраться с htaccess (скрыть папку в адресной строке)
Имеется сайт www.mysite.kz (Локально на денвере). Когда захожу на него он переправляет на страницу...

Возможно ли изменить название сайта в адресной строке браузера с помощью .htaccess
Сайт диски-шина.рф был перенесен на новый хост. Но доменное имя застряло на старом хосте. На...

убрать .php с адресной строки браузера htaccess
Здравствующие. Много информации пересмотрел в интернете и не получается в адресной строке браузера...

Как скрыть расширения файлов в адресной строке?
Доброго времени суток, уважаемые гуру. Не могу разобраться с элементарной задачей. Помогите,...

Как скрыть ссылку в адресной строке браузера
Здравствуйте! я только начинаю создавать сайты на ASP.NET и мне нужно узнать Как скрыть ссылку в...

5
miketomlin
Заблокирован
18.08.2014, 08:50 2
По id поиск будет происходить быстрее. Убрать можно, но не в .htaccess. Во многих системах id используется в ЧПУ, а проблема смены заголовка решается путем перенаправления всех старых версий ссылки на новую (наличие постоянного id в этом помогает).
0
Eugene-nsk
29 / 29 / 8
Регистрация: 27.07.2014
Сообщений: 185
18.08.2014, 09:19  [ТС] 3
miketomlin, чтобы перенаправить все старые версии на новые, необходимо сохранять в базе все эти старые версии заголовков, что, конечно, совершенно не продуктивно, поэтому хотелось бы все-таки вытаскивать id из залоговка
0
miketomlin
Заблокирован
18.08.2014, 17:35 4
См. приписку в скобках. Наличие id в ссылке позволяет избежать сохранения текста старых версий ссылки в базе. Поиск идет по id, а потом просто сравнивается текст из ссылки с текстом новой версии ссылки из базы. Если тексты совпадают – все ОК, иначе – перенаправление на новую версию. Кстати эта система не просто так придумана. Если бы ее не было, при смене заголовка все старые версии ссылки (возможно, уже где-то опубликованные) становились бы недействительными.

Все сказанное выше вовсе не означает, что ЧПУ без id не может нормально функционировать. Вы можете определять ссылку и тайтл независимо друг от друга, хорошо продумывая текст ссылки, чтобы при незначительном изменении тайтла не было бы нужды изменять ссылку. А если все-таки такая нужда возникает, подключать редирект для старой версии вручную или осознанно отказываться от старой версии.
0
Eugene-nsk
29 / 29 / 8
Регистрация: 27.07.2014
Сообщений: 185
18.08.2014, 18:10  [ТС] 5
miketomlin, собственно, вопрос был в том, можно ли скрыть id'шник в ЧПУ. Ответ, я так понимаю в том, что нельзя?
0
miketomlin
Заблокирован
19.08.2014, 21:12 6
Можно, но не в .htaccess.
0
19.08.2014, 21:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.08.2014, 21:12

Чпу в адресной строке из mysql
Здравствуйте! Помогите сделать ЧПУ в адресной строке, что бы вместо...

S.coldsearch.com в адресной строке браузера
ввожу любой адрес, кидает сначала на coldsearch а потом уже на нужный сайт.в настройках стоит от...

Замена ссылок в адресной строке браузера
Привет всем. Такой вопрос: предроложим страница "контакты" выводится в адрессной страке как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru