Правило URL перезаписи Nginx, имеющее специальный символ (#) для раздела страницы - PullRequest
0 голосов
/ 17 сентября 2018

Мне нужна помощь в переписывании URL в конфигурации nginx, которая должна работать следующим образом:

/ products / # подробности для / production / # items

, но она не работает как # создает проблему.

Примечание: # в URL обозначает раздел страницы

например www.test.com / products /# детали должны быть перенаправлены на www.test.com / product / # items

Ответы [ 2 ]

0 голосов
/ 17 сентября 2018

Нет способа сделать это переписать. # и все, что ему предшествует, не будет отправлено на сервер, оно полностью обрабатывается на стороне клиента.

0 голосов
/ 17 сентября 2018

Это невозможно при использовании nginx , поскольку браузеры не отправляют хэштеги (#details) на серверы.Таким образом, вы не можете переписать на nginx или любых других веб-серверах.

Другими словами, хэштеги доступны только для браузера, поэтому вам придется иметь дело с Javascript.Сервер не может прочитать его.

http://tools.ietf.org/html/rfc2396#section-4

Когда ссылка URI используется для выполнения действия поиска на идентифицированном ресурсе, необязательный идентификатор фрагмента, отделенный от URIсимволом штриховки ("#"), состоит из дополнительной справочной информации, которая должна интерпретироваться пользовательским агентом после успешного завершения действия поиска.Как таковой, он не является частью URI, но часто используется вместе с URI.

...