Файл htaccess


Доброе утро, мне нужно, чтобы URL-адреса, написанные с # сервером, автоматически записывались с %23, что является единственным способом, который работает, любые примеры с файлом htacces ? пожалуйста.

Author: Daniel Garcés, 2016-05-19

1 answers

Видите ли, это очень неясно, что вы ставите с символами #. Лично я полностью советую им (лучше всего использовать символы, которые безопасны для url-адреса, и не нужно ничего избегать, хотя фреймворки банкируют вас).

Если вы хотите отправить этот URL на сервер (например. нажмите на ссылку, чтобы загрузить файл) я делаю его коротким:

Независимо от того, как вы думаете об этом, запрос на url, такой как http://www.example.org/mi#archivo#cualquiera.mp3 нет. он никогда не будет отправлять хэш или то, что следует.

Если вы хотите на самом деле выплюнуть этот URL-адрес с сервера на клиент, я рекомендую использовать функции, обычно называемые url encode. Они будут избегать неудачных символов , подобных этому в вашем ожидаемом % 23.

В сумме: вы ничего не можете сделать в своем. htaccess, но это соответствует вам в программном обеспечении.

Давайте посмотрим на это конкретно:

  1. я понимаю, что ваш браузер получает доступ к "url" / Finder/ # записи%2FTigo. Узнайте это, прежде чем вы начнете quilombo: серверу вы просто отправляете GET /Finder/. Сервер отвечает вам на какой-то HTML-код с помощью JS (который делает интерактивную часть браузера). Возвращаемый JS в какой-то момент сам обрабатывает значение location.hash, которое содержит "записи/Tigo". Этот собственный способ может быть, положите его, вызов Ajax.
  2. сервер возвращает вам результаты, и один из них, кажется, url с /путь/в/файл/daniel#garces.mp3. когда вы пытаетесь получить доступ к (загрузив его), вы поймете, что ваш сервер не работает, потому что он пытается получить доступ к /путь/в/файл/daniel. Я не знаю, как вы получаете эти данные, но во время встраивания этого значения в html клиента вы должны сначала убедиться, что вы избегаете его (javascript имеет decodeURIComponent() в то время как php я думаю, что у него есть urldecode, но это зависит от того, возвращаете ли вы эти данные внутри HTML-фрагмента ajax или внутри фрагмента js или json ajax).
  3. нигде мы не попали в. htaccess, потому что заранее вы никогда не получите этот символ #.
 0
Author: Luis Masuelli, 2016-05-19 16:18:36