Простое (?) RewriteRule для htaccess

У меня есть эта постоянная ссылка:

http://МОЙ-САЙТ/dett.php?piva=02181130041&id=58&pv=NO

Вся информация после '?' речь идет о клиенте. Что я сделал для SEO-запроса, так это изменил ссылку на это:

http://МОЙ-САЙТ/ИМЯ-КЛИЕНТА/dett.php?piva=02181130041&id=58&pv=NO

Чтобы эти новые постоянные ссылки работали, мне нужно отредактировать .htaccess с помощью RewriteRule, это правильно? Может ли кто-нибудь помочь мне правильно написать это правило?

Заранее спасибо.

Мой код:

#RewriteRule 
^\/([a-z0-9_\.-]+)\/dett.php?piva=([a-zA-Z0-9]+)&id=([0-9]+)&pv=([a-zA-Z]+)$ dett.php?piva=$2&id=$3&pv=$4 [QSA,L]

person ilGhera    schedule 22.02.2016    source источник
comment
A.) - Я чувствую, что опубликую имя клиента, как будто это вторжение в частную жизнь, B.) опубликуйте код, который у вас есть.   -  person Derek Pollard    schedule 23.02.2016
comment
Привет, Оливер, спасибо за повтор. Клиент был не то слово, они являются частью сети продавцов, так что нет проблем с их показом. Это то, чего они хотят.   -  person ilGhera    schedule 23.02.2016
comment
Я пытался сделать что-то подобное #RewriteRule ^\/([a-z0-9_\.-]+)\/dett.php?piva=([a-zA-Z0-9]+)&id=([0-9]+)&pv=([a-zA-Z]+)$ dett.php?piva=$2&id=$3&pv=$4 [QSA,L]   -  person ilGhera    schedule 23.02.2016


Ответы (1)


Все, что вы, кажется, делаете, это выбиваете первый URI и переносите все остальное как есть. Я думаю, что это соответствует тому, что вы просите:

RewriteEngine On
RewriteRule ^([\w\.-]+)/dett.php$ dett.php [L]

Но я не могу сказать, что понимаю. Похоже, требования должны быть шире.

Вы хотите, чтобы клиент запросил следующее:
http://MY-SITE/CUSTOMER-NAME/dett.php?piva=02181130041&id=58&pv=NO

И ты хочешь подать им это?
http://MY-SITE/dett.php?piva=02181130041&id=58&pv=NO

Какой смысл в /CUSTOMER-NAME/, если вы не используете его где-то в новом URL-адресе?

person Stupid Palmer    schedule 23.02.2016
comment
Привет, спасибо за ваш ответ! Настоящая ссылка - вторая без имени. Что я хочу сделать, так это изменить постоянную ссылку, добавив имя, и заставить ее работать. Итак, ссылка, которую я хочу показать, должна оставаться справа, верно? Спасибо еще раз. - person ilGhera; 24.02.2016
comment
@ilGhera Что значит настоящая ссылка? Что значит остаться справа? RewriteRule принимает форму: RewriteRule <pattern> <substitution>, где <pattern> сравнивается со всеми запросами, поступающими на сервер, а <substitution> — это то, что вы хотите отправить обратно клиенту, когда pattern совпадает. Вы уверены, что вам нужен RewriteRule? Можете ли вы привести реальный пример запроса, который придет на сервер, и что вы хотите вернуть клиенту? - person Stupid Palmer; 24.02.2016