htaccess rewriterule для захвата всего прошлого имени хоста - PullRequest
0 голосов
/ 12 июля 2010

Я хочу, чтобы правило перезаписи htaccess захватывало все за именем хоста и использовало его как аргумент Например, я хочу, чтобы http://example.com/one обрабатывался http://example.com/category.php?cat=one

Я думаю, это должно быть просто, но я не могу найти комбинацию. Спасибо

Ответы [ 2 ]

1 голос
/ 14 июля 2010

Вот что я придумал:

RewriteRule ^/?([^\./]*)[:;,\.]*$ category.php?cat=$1 [L,NS]

Кто-нибудь может найти способ улучшить его?

0 голосов
/ 13 июля 2010

Попробуйте что-то вроде этого:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ category.php?cat=$0 [B]

Если вы тоже хотите передать строку запроса, обязательно измените флаг B на B,QSA, но помните, что кто-то может затем передать аргумент GET cat, который переопределит то, что вы задали переписать. Есть некоторые обходные пути в этой ситуации, если они вам нужны, но в противном случае это должно сделать это за вас.

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