Стереть ‘#’ из url

#.htaccess #url-rewriting #cycle #history.js

#.htaccess #перезапись url #цикл #history.js

Вопрос:

ОБНОВЛЕНО

Я не понял, как заставить это работать, поэтому я надеюсь, что вы знаете, потому что я не нашел больше решений:

Я реализовал цикл jquery в wordpress с помощью window.Расположение.хэш для создания отдельного URL-адреса для каждого слайда (пример здесьhttp://jquery.malsup.com/cycle/perma.html )

Теперь у меня есть индекс с несколькими выбранными фотографиями разных категорий, который работает с такими хэшами, как localhost / prueba /#men / #work61, localhost / prueba /#women / #work15 и т.д. … Фокус в том, что у меня также есть категория / men / и фотография #work61, которая постоянно вызывает изменение индекса, но не фотографии в категории на самом деле. Итак, что мне нужно, так это изменить URL-адрес без перезагрузки с /#men / на / men /, и если они поделятся ссылкой, они всегда перейдут на нужную фотографию и раздел (я хорошо это объяснил?)

Я тестировал множество способов получения, с history.js и даже с помощью aisle Pushestate, но я не нашел правильного решения. Недавно я сделал это с помощью htaccess, и это именно то, что мне нужно

 Options  FollowSymLinks
RewriteEngine On
RewriteBase /prueba/
RewriteRule ^([^/] )/([^/] )/$ $1/#$2 [NE,R]
  

Это переводит меня с localhost / prueba /men /work61 на localhost / prueba /men / #work61 но если я попытаюсь добавить хэш в первую папку (#men), это также сработает, только если кто-нибудь разместит ссылку напрямую

Есть идеи? Заранее спасибо

Ответ №1:

Я думаю, вам нужно понять спецификацию URI, раздел 3.5https://www.rfc-editor.org/rfc/rfc3986#section-3.5 . По сути, в контексте веб-браузера, отображающего HTML-документы, фрагмент URI (после # ) ссылается на подмножество ресурса (страницы).

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

Комментарии:

1. Спасибо Ли за спецификацию URI. Я думаю, что я не очень хорошо объяснил причину «проблемы», это как раз то, что мне нужно 🙂 Я изменяю хэш цикла, чтобы получить этот URL-адрес из домашней страницы (/ prueba /), где у меня есть слайд-шоу с выбранными проектами. Этот дом изменит свои проекты, но путь всегда будет существовать в слайд-шоу определенного раздела (в данном случае men). Итак, когда пользователи выбирают localhost /prueba /#men / work61 , они переходят к этому слайду home, но если они выбирают localhost / prueba /men / #work61 , они переходят к этому слайд-шоу, но в категории men, и это то, что я ищу