Статический URL не перенаправляет на запрашиваемую страницу

0

У меня есть вопрос относительно файла.htaccess.
Я переписал динамический URL-адрес в статическом виде следующим образом: www.mysite.com/index.php?lang=IT на www.mysite.com/it

используя это правило перезаписи:

RewriteEngine On
RewriteRule ^it/([^/]*)\.html$ /index.php?lang=$1 [L]

Все идет нормально...

Теперь мне нужно создать еще один статический URL-адрес для динамического URL-адреса, который перенаправляет на описание продукта www.mysite.com/product_details.php?id=1485

Правило, вставленное в.htaccess:

RewriteEngine On
RewriteRule ^it/prodotto-([^-]*)-([^-]*)\.html$ /it/product_details.php?id=$1&lang=$2 [L]

К сожалению, если я нажму ссылку на связанную ссылку, я не смогу связаться с запрашиваемой страницей; но если я прокомментирую первое правило, подобное этому

#RewriteRule ^it/([^/]*)\.html$ /index.php?lang=$1 [L]

то я вижу страницу. Вы знаете, как решить эту проблему?

  • 0
    Привет, я изменил регулярное выражение, но я получил тот же результат.
  • 0
    Сначала поместите второе правило (prodotto ...), иначе первое совпадет с ним и остановит обработку, как обозначено [L]
Теги:
.htaccess

1 ответ

-1

Предполагая, что язык равен языку, который вы хотите, чтобы сценарий так поступил?

RewriteEngine On
RewriteBase /
RewriteRule ^it/([^/]*).html$ /index.php?lang=$1 [L]
RewriteRule ^it/prodotto-([^/]*)-([^/]*).html$ /it/product_details.php?id=$1&lang=$2 [L]

это будет делать

yoursite.com/it/$1.html

а также

yoursite.com/it/prodotto-$1-$2.html

?

  • 0
    Привет iJumbo, Да, я пытаюсь получить результат выше, но, как сказано, вторая ссылка не работает.
  • 0
    Как сказал arco444, первое правило будет переопределять второе, пытаясь инвертировать их или разделить с помощью нового URL

Ещё вопросы

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