Перезапись URL в подпапке с использованием .htaccess

0

Я пытаюсь реализовать переписывание URL в моем приложении PHP. Может ли кто-то поэтапно организовать процедуру перезаписи URL-адресов в.htaccess.

В моем приложении я хочу реализовать следующий URL-адрес

www.domain.com/shop/shop.php?shopname=myshop&sh=1

в

www.domain.com/shop/myshop

я использую следующее

RewriteEngine On

RewriteBase /shop/

RewriteCond %{THE_REQUEST} /shop\.php\?shopname=([^\s&]+)&sh=([^\s&]+) [NC]

RewriteRule ^ %1? [R=301,L,NE]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/]+)/?$ shop.php?shopname=$1&sh=$2 [L,QSA,NC]*

Он показывает URL-адрес, например, www.domain.com/shop/myshop

Но не указывая на www.domain.com/shop/shop.php?shopname=myshop&sh=1

  • 0
    Как вы собираетесь сопоставить идентификатор? у вас его нет в URL www.domain.com/shop/myshop
Теги:
url
subfolder
rewrite

1 ответ

0

Если я правильно вас понимаю, вы можете делать то, что хотите:

RewriteCond %{QUERY_STRING} ^id=([^&]*)&name=(.*)$
RewriteRule ^/shop/shop.php$ /shop/$2?id=$1

RewriteCond проверяет строку запроса правильного формата и извлекает значения. $ 1 = идентификатор и $ 2 = имя.

RewriteRule переписывает URL-адрес правильного формата в новый формат, вставляя параметры имени и идентификатора из RewriteCond.

  • 0
    Это никогда не будет работать по нескольким причинам. Это также обратные ссылки

Ещё вопросы

Сообщество Overcoder
Наверх
Меню