Форматирование URL с использованием .htaccess

#.htaccess #url #mod-rewrite #pretty-urls

#.htaccess #url #мод-перезапись #pretty-urls

Вопрос:

Я хочу скрыть shop , есть ли у меня bill после этого:

Это мои примеры URL-адресов:

 http://mypools.myfiles.com/shop/bill/home.php
http://mypools.myfiles.com/shop/bill/search.php
http://mypools.myfiles.com/shop/bill/index.php
  

Кроме того, если я введу любой из следующих URL-адресов:

 http://mypools.myfiles.com/shop/bill
http://mypools.myfiles.com/shop/bill/
  

Я хочу, чтобы он перенаправлял на следующую ссылку:

 http://mypools.myfiles.com/shop/bill/home.php
  

Комментарии:

1. Зачем кому-то использовать ваши URL-адреса?

2. В вашем вопросе есть некоторые неясности: вы хотите перенаправить http://mypools.myfiles.com/bill/home.php на http://mypools.myfiles.com/shop/bill/home.php (внутренне) и http://mypools.myfiles.com/shop/bill на http://mypools.myfiles.com/shop/bill/home.php внутренне или внешне?

3. Извините за путаницу. Основное требование — скрыть «магазин» из первых трех URL-адресов (должно работать на всех похожих URL-адресах). если я введу » mypools.myfiles.com/shop/bill » ИЛИ » mypools.myfiles.com/shop/bill » он должен перенаправить на mypools.myfiles.com/shop/bill/home.php [но магазин не будет отображаться в конечном URL-адресе]. Теперь понятно?

Ответ №1:

Поместите этот код в свой DOCUMENT_ROOT/.htaccess файл:

 RewriteEngine On

RewriteRule ^(bill/. )$ /shop/$1 [L,NC]

RewriteRule ^shop/bill/?$ /shop/bill/home.php [L,NC]
  

Комментарии:

1. Приведенный выше код предназначен для перенаправления ……/bill/ на …/bill/home.php ИЛИ скрыть папку магазина от URL-адреса?

2. Этот код предназначен для обработки http://mypools.myfiles.com/shop/search.php URL-адреса в вашем браузере, который будет перезаписан внутренне в http://mypools.myfiles.com/shop/bill/search.php