htaccess переписать для строки запроса - PullRequest
19 голосов
/ 05 августа 2009

Хорошо, я новичок в этом, и я был бы очень признателен за помощь, спасибо!

Как мне правильно переписать это в .htaccess?

Итак, у меня есть строка запроса в моем URL:

 /?url=contact

Все, что я хочу сделать, это удалить строку запроса

 /contact

Помощь? Я искал Google, и я изучаю синтаксис прямо сейчас, но факт остается фактом .. Я пока не знаю, как это сделать. Спасибо всем

Ответы [ 3 ]

30 голосов
/ 05 августа 2009

Это было мое решение:

RewriteRule ^(.*)$ index.php?url=$1 [L,QSA]

27 голосов
/ 05 августа 2009

Попробуйте это:

RewriteEngine On
RewriteRule ^(.*)$ /index.php?url=$1 [L]

Пользователю на вашем сайте он увидит и перейдет к этому:

http://example.com/contact

Но настоящая страница будет выглядеть примерно так:

http://example.com/index.php?url=contact

Этот бит, [L], сообщает серверу, что это последняя строка правила перезаписи и его следует прекратить.

18 голосов
/ 05 августа 2009
RewriteCond %{QUERY_STRING} url=(.*)
RewriteRule index.html  %1

(или что угодно, если это не index.html, index.php, что угодно)

Вам нужно захватить строку запроса, которая обычно не просматривается RewriteRule, и использовать обратную ссылку% 1, а не $ 1, как при захвате в RewriteRule

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...