Реально ли в строке браузера подменить урл для пользователя?

P
На сайте с 06.01.2009
Offline
601
6260

Ходите бродите внутри сайта. Зашли в очередной урл. Товар понравился. Но вы можете по урл догадаться, как называется товар. Урл, например, site.ru/telefon-samsung-s3#inforr - вопрос вообще возможно от вас скрыть реальный урл? Т.е. хотите ссылку оставить в твиттере или жене отправить а ссылка - site.ru/id5544 а если по ней зайдете, будет редирект на site.ru/telefon-samsung-s3#inforr но опять же он в адресной строке превратится в site.ru/id5544

зы подмена урла требуется только когда есть #inforr

PN
На сайте с 22.08.2012
Offline
103
#1

Почему нельзя просто все url сделать вида site.ru/id5544 ??

Подменять можно javascript'ом. Так делают на ajax-сайтах.

Мой совет помог? Не скупись! Bitcoin 1Lseddet1o1B6odgXQHbGaWGwRkt1Db8Ef Ethereum 0x450f1a17461e25194B7F9226cDEe70173F39e1e1
Artisan
На сайте с 04.03.2005
Offline
375
#2
postavkin:
возможно от вас скрыть реальный урл?

<base href="http://www.show.com/">

www.leak.info / ДАРОМ линки конкурентов и забытых доменов
totamon
На сайте с 12.05.2007
Offline
437
#3

а ПС как на это посмотрит?) может начнете с целей этой махинации? а по сути JS может менять ссылку в адресной строке.

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
PN
На сайте с 22.08.2012
Offline
103
#4
Artisan:
<base href="http://www.show.com/">

нельзя так, это всего лишь базовый путь для ссылок

[Удален]
#5

Так сделать можно.

При открытии нужного урла добавляете в window.history, урл который должен видеть пользователь и все, он виден пользователю в адресной строке, но сервер должен уметь обрабатывать этот урл и знать куда его редиректить. После редиректа опять делаете pushState в history. Примерно так:


window.history.pushState( null, null, 'hello' );

вставьте эту строку в js консоль браузера и увидите как поменяется урл на site.ru/hello

Artisan
На сайте с 04.03.2005
Offline
375
#6
proksey-net:
нельзя так, это всего лишь базовый путь для ссылок

В некоторых бродилках base адрес

подставляется в строку адреса.

PN
На сайте с 22.08.2012
Offline
103
#7
imagine:
Так сделать можно.
При открытии нужного урла добавляете в window.history, урл который должен видеть пользователь и все, он виден пользователю в адресной строке, но сервер должен уметь обрабатывать этот урл и знать куда его редиректить. После редиректа опять делаете pushState в history. Примерно так:

window.history.pushState( null, null, 'hello' );

вставьте эту строку в js консоль браузера и увидите как поменяется урл на site.ru/hello

но в истории останутся обе страницы - и с реальным адресом, и с новым:)

[Удален]
#8
proksey-net:
но в истории останутся обе страницы - и с реальным адресом, и с новым:)

пожалуйста:


history.replaceState( null, null, 'hello' )
P
На сайте с 06.01.2009
Offline
601
#9
totamon:
а ПС как на это посмотрит?) может начнете с целей этой махинации? а по сути JS может менять ссылку в адресной строке.

Не читаете. В старпосте написано. вы можете по урл догадаться, как называется товар

---------- Post added 02-04-2015 at 09:30 ----------

proksey-net:
Почему нельзя просто все url сделать вида site.ru/id5544 ??

Что значит сделать? Урлы уже есть и давно, по 5-7 лет, просто возникла необходимость сделать так, чтобы по урлу невозможно было догадаться о названии товара (бренд и артикул товара).

---------- Post added 02-04-2015 at 10:19 ----------

imagine:
пожалуйста:

history.replaceState( null, null, 'hello' )

Спасибо.

Две проблемы:

1. Возможно ли ли при этом оставить(получить) реальный $_SERVER["HTTP_REFERER"]; а не подменный при переходе на другую страницу?

т.е. мы были в урл1 где в браузере подменили на hello, перешли в урл2, но урл2 запрашивая реффер получает hello, а надо урл1

2. мы были в урл1 где подменили в браузере на hello, перешли в урл2, потом нажали кнопку "назад" браузера - попали в hello. Нужно в урл1.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий