Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
32 / 31 / 9
Регистрация: 27.07.2014
Сообщений: 186

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

18.08.2014, 01:20. Показов 4458. Ответов 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
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.08.2014, 01:20
Ответы с готовыми решениями:

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

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

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

5
930 / 846 / 190
Регистрация: 28.11.2013
Сообщений: 3,621
18.08.2014, 08:50
По id поиск будет происходить быстрее. Убрать можно, но не в .htaccess. Во многих системах id используется в ЧПУ, а проблема смены заголовка решается путем перенаправления всех старых версий ссылки на новую (наличие постоянного id в этом помогает).
0
32 / 31 / 9
Регистрация: 27.07.2014
Сообщений: 186
18.08.2014, 09:19  [ТС]
miketomlin, чтобы перенаправить все старые версии на новые, необходимо сохранять в базе все эти старые версии заголовков, что, конечно, совершенно не продуктивно, поэтому хотелось бы все-таки вытаскивать id из залоговка
0
930 / 846 / 190
Регистрация: 28.11.2013
Сообщений: 3,621
18.08.2014, 17:35
См. приписку в скобках. Наличие id в ссылке позволяет избежать сохранения текста старых версий ссылки в базе. Поиск идет по id, а потом просто сравнивается текст из ссылки с текстом новой версии ссылки из базы. Если тексты совпадают – все ОК, иначе – перенаправление на новую версию. Кстати эта система не просто так придумана. Если бы ее не было, при смене заголовка все старые версии ссылки (возможно, уже где-то опубликованные) становились бы недействительными.

Все сказанное выше вовсе не означает, что ЧПУ без id не может нормально функционировать. Вы можете определять ссылку и тайтл независимо друг от друга, хорошо продумывая текст ссылки, чтобы при незначительном изменении тайтла не было бы нужды изменять ссылку. А если все-таки такая нужда возникает, подключать редирект для старой версии вручную или осознанно отказываться от старой версии.
0
32 / 31 / 9
Регистрация: 27.07.2014
Сообщений: 186
18.08.2014, 18:10  [ТС]
miketomlin, собственно, вопрос был в том, можно ли скрыть id'шник в ЧПУ. Ответ, я так понимаю в том, что нельзя?
0
930 / 846 / 190
Регистрация: 28.11.2013
Сообщений: 3,621
19.08.2014, 21:12
Можно, но не в .htaccess.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.08.2014, 21:12
Помогаю со студенческими работами здесь

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

Чпу в адресной строке из mysql
Здравствуйте! Помогите сделать ЧПУ в адресной строке, что бы вместо http://test1.ru/catalog/film.php?id=1 было...

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

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

Замена ссылок в адресной строке браузера
Привет всем. Такой вопрос: предроложим страница "контакты" выводится в адрессной страке как "example.ru/index.php?page=3". Каким...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru