Результаты поиска мод переписать с запросом URI

Я пытаюсь создать форму поиска для своего веб-сайта с дружественными URL для поисковых систем.

У меня есть следующий код формы на каждой странице моего сайта:

<form class="form" method="get" id="searchform" action="searchrd">

Поиск

Вот также мой htaccess файл: `

RewriteCond %{REQUEST_URI} searchrd$

RewriteCond %{QUERY_STRING} ^query=([^&]+)$
RewriteRule ^([^&]+)$ /results/%1? [R=301,L]
RewriteRule ^/?results/([^&]+)?$ results.php?query=$1 [NC]

Моя проблема заключается в следующем:

Например, когда я захожу на домашнюю страницу и начинаю свой поиск с помощью {search-term1}, я попадаю на http: // websitename.com/results/advansearch-term1}

Нет проблем с этим шагом

Но если я попробую выполнить поиск на странице результатов с {search-term2}, я получу этот URL-адрес

Мой вопрос, как я могу получить этот URL http://websitename.com/results/{search-term2} для второго поиска, даже если я делаю поиск на странице результатов. Я уже искал часы и модифицировал флаги, правила и условия, но ничего не дало мне того, что я хотел.

2

Решение

Используйте абсолютный путь в вашем действии формы:

<form class="form" method="get" id="searchform" action="/searchrd">

И изменить ваши правила следующим образом:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^query=([^&]+)$ [NC]
RewriteRule ^searchrd/?$ /results/%1? [R=301,L,NC,NE]

RewriteRule ^/?results/([^&]+)?$ results.php?query=$1 [NC,L,QSA]
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]