Мод Rewrite - скрыть .php, скрыть необязательную строку запроса - PullRequest
1 голос
/ 10 августа 2011

Я выяснил, как скрыть .php, но мне нужно скрыть любую строку запроса в URL-адресе и обеспечить ее отсутствие.

Вот мое текущее правило: RewriteRule ^/?([a-z]+)$ $1.php

Я искал везде, но безрезультатно.

1 Ответ

0 голосов
/ 10 августа 2011

Допустим, у вас есть страница, на которой отображаются элементы из какого-либо поиска. Таким образом, запрашиваемый ресурс www.example.com/page.php?display=news.

В этом случае вы можете использовать что-то вроде RewriteRule ^/news/$ page.php?display=news Таким образом, вы можете создавать дружественные URL-адреса для различных ресурсов, которым может потребоваться передать значение строки запроса.

Допустим, вы хотите сделать это универсальным. Таким образом, дисплей может иметь значения news, about, company, которые отображаются на urls / news / / about / / company /, тогда вы просто меняете правило на

RewriteRule ^/([^/]+)/?$ page.php?display=$1

Вы также можете использовать этот второй метод, чтобы изменить URL-адреса своей системы корзины покупок на дружественные. Предположим, ваша корзина покупок использует строку запроса, например - shop.php? Category = 1 & product = 10. Вы можете преобразовать это в URL, например, shop / category / 1 / product / 10. Правило будет

RewriteRule ^shop/category/([^/]+)/product/([^/]+)$ shop.php?category=$1&product=$2

...