2015-09-10 3 views
0

Я сделал команду «сайт:» в google для просмотра индексированных URL-адресов и нашел много URL-адресов с параметрами, все указывающими на одну и ту же страницу.Перенаправление адресов с параметрами Использование Htaccess

Его статический сайт, но около 5 лет назад это был сайт Wordpress, который может быть, как эти ссылки были созданы и проиндексированы Google. 3 основных ссылки, которые я нашел, следующие. Все они выглядят как эти 3, но с разными идентификаторами.

http://example.com/index.php?option=com_banners&task=click&bid=41

http://example.com/?option=com_content&view=article&id=86&Itemid=201

http://example.com/phlebotomy-jobs?&pid=6774238282444518&q=Phlebotomy&pg=7

Мой вопрос, как перенаправить эти ссылки, со всеми различными идентификаторами параметров, в их соответствующих страницах. Первые два идут на главную страницу, а третья - на страницу/phlebotomy-jobs.

Итак, что я ищу это, например, этот URL: http://example.com/phlebotomy-jobs?&pid=6774238282444518&q=Phlebotomy&pg=7 для перенаправления http://example.com/phlebotomy-jobs

В основном удалить все из? на.

+0

Используете ли вы какой-либо рамки? – GiamPy

+0

Нет, я не использую фреймворк. Построен с нуля. 90% html с небольшим количеством php и jquery. – Tmac

ответ

0
RewriteEngine On 
RewriteRule ^index.php?$ /path/page.php [R=301,L,QSA] 
RewriteRule ^$ /path/page.php [R=301,L,QSA] 
RewriteRule ^phlebotomy-jobs?$ /path/page.php [R=301,L,QSA] 

QSA RewriteRule Флаг добавляет строку запроса.

https://httpd.apache.org/docs/2.4/rewrite/flags.html

Edit:

Поскольку вы не связаны с сохранением строки запроса:

RewriteEngine On 
RewriteCond %{REQUEST_URI} (^/index.php$|^/$|^/phlebotomy-jobs$) 
RewriteCond %{QUERY_STRING} . 
RewriteRule (.*) /$1? [R=301,L] 

Примечание: Этот метод предотвращает прохождение любые строки запроса ни к одному из эти две страницы.

+0

Хм, это, кажется, не удаляет все из-за? на. Он просто добавляет URL-адрес прямо перед вопросительным знаком. Возможно, я не реализовал это правильно или не был полностью ясен. Например, этот URL: http://example.com/phlebotomy-jobs?&pid=6774238282444518&q=Phlebotomy&pg=7 следует перенаправить на http://example.com/phlebotomy-jobs – Tmac

+0

Я неправильно понял ваш вопрос, см. Редактирование. –

0

Ну, не уверен, что это «лучший» способ, но это, к примеру, работает:

RewriteCond %{QUERY_STRING} option= 
RewriteRule (.*) /$1? [R=301,L] 
Смежные вопросы