Apache mod_rewrite - как скрыть переменные $ _GET от URL - PullRequest
0 голосов
/ 02 сентября 2010

Когда я вызываю страницу

http://localhost/books-123-name.html?language_id=1

, чтобы появиться в браузере следующая ссылка:

http://localhost/books-123-name.html

, но сохранит значение language_id = 1

Как это можно сделать?

Спасибо.

Ответы [ 3 ]

0 голосов
/ 02 сентября 2010

Существует несколько способов хранения информации о запросах, отличных от параметров GET. Один использует куки, и вы можете хранить language_id в куки. Особый случай использования файлов cookie - использование сеанса. Вы также можете передать language_id в запросе POST, потому что параметры POST невидимы для пользователя. Вы также можете использовать mod_rewrite, чтобы все еще использовать параметры GET, но сделайте их красивее.

0 голосов
/ 02 сентября 2010

Как jakenoble сказал использовать POST.

Или, может быть, вы можете использовать другой шаблон URL, как

http://localhost/{human-readable-language}/books-123-name.html

например. http://localhost/en/books-123-name.html

до

http://localhost/books-123-name.html?language_id={languade-id}

например. http://localhost/books-123-name.html?language_id=1

0 голосов
/ 02 сентября 2010

Короче, вы не можете.

Браузеру нужны эти значения, чтобы прочитать их.

Вы можете попробовать прочитать их, что-то с ними сделать, а затем перенаправить на страницу без параметров.

Или используйте POST.

Но что более важно, почему?

...