Нельзя. У Drupal - своя система роутинга. Для него site.ru/index.php?p=foo и site.ru/index.php?p=bar - одна и та же страница. Если вы переносите сайт с одного движка на другой(мне кажется вы это делаете) сделайте редиректы.
Там еще меньше: около 15 в модуле (спасиоб Dansamara и Mnigma@drupal.org) и еще 2 в views.
Вот только давно это было, а недавно с человеком вспоминали всю последовательность - так и не получилось у него - что-то упустили. И еще, у меня вместо 'support' nid подставляется - так что как-то по-другому, вероятно.
301 редирект на нормальные URL. На хорошем сайте ~ через месяц поисковики забудут о старом мусоре и полюбят ещё больше (проверено на 4 пациентах с джумлы + 1 в процессе).
301 редирект на нормальные URL. На хорошем сайте ~ через месяц поисковики забудут о старом мусоре и полюбят ещё больше
Абсолютно верно. Самопис на 6 переносил,около сотни страниц нужно было поклеить - через месяц всё стало ещё лучше индексироваться.
И страниц 30 наверно не клеил-сами проиндексировались.
#Если есть параметр p
RewriteCond %{QUERY_STRING} ^p=(.*)$ #Редиректим сюда
RewriteRule ^(.*)$ /index.php?q=%1 [NC,R=301,L] #Или сюда, как больше нравится #RewriteRule ^(.*)$ /%1? [NC,R=301,L]
Drupal мешает. Посмотрите, как у вас будут строится ссылки, и вобще все что строится через систему меню Drupal-а. Anonym_tsk
А вот ваш вариант действительно хорош.
Ага, а система меню у вас тоже такие ссылки будет строить? И все, что проходит через функцию url? С отключенными чистыми ссылками пути будут строится как http://www.drupal.ru/?q=node/86207
Ага, а система меню у вас тоже такие ссылки будет строить? И все, что проходит через функцию url? С отключенными чистыми ссылками пути будут строится как http://www.drupal.ru/?q=node/86207[/quote]
/?q=bla-bla это одно и то же, что и /index.php?q=bla-bla
Учите матчасть.
Ага, а система меню у вас тоже такие ссылки будет строить? И все, что проходит через функцию url? С отключенными чистыми ссылками пути будут строится как http://www.drupal.ru/?q=node/86207
/?q=bla-bla это одно и то же, что и /index.php?q=bla-bla
Учите матчасть.[/quote]
/?q=bla-bla это одно и то же, что и /index.php?q=bla-bla
Учите матчасть.
Еще раз, система меню Drupal будет строить ссылки вида /index.php?q=bla-bla? "Учите матчасть" и почитайте про то, как это воспринимают поисковики, как выше сказал divined
Комментарии
Нельзя. У Drupal - своя система роутинга. Для него site.ru/index.php?p=foo и site.ru/index.php?p=bar - одна и та же страница. Если вы переносите сайт с одного движка на другой(мне кажется вы это делаете) сделайте редиректы.
при большом желании всё можно
Можно.
Тогда может отпишитесь, как это делается?
Айдар, 50 строк кода в студию
В голову приходят, только какие-то извращенные варианты, аля своих редиректов или жутких переопределений с помощью hook_url_outbound_alter
Если, есть что-то покрасивее любопытно послушать.
отключите чистые ссылки и заработает, только вместо "р" будет "q"
site.ru/index.php?q=support
Там еще меньше: около 15 в модуле (спасиоб Dansamara и Mnigma@drupal.org) и еще 2 в views.
Вот только давно это было, а недавно с человеком вспоминали всю последовательность - так и не получилось у него - что-то упустили. И еще, у меня вместо 'support' nid подставляется - так что как-то по-другому, вероятно.
<?php
function iliketerribleurls_menu(){
$items['index.php'] = array(
'type' => MENU_CALLBACK,
'page callback' => "views_embed_view('my_view', $display_id = 'default')",
);
return $items;
}
?>
Во вьюхе в аргументе node:nid php-код:
if($_GET['ID']) return $_GET['ID'];
Это для 6-ки.
Возможно, поможет еще вот это: http://www.drupal.ru/node/72879
Вобще-то ссылки будут вида site.ru/?q=support
Айдар
Вот это я и называю извращенным вариантом)
Интересно, в чём потаённый смысл такого изврата?
Ну, кто бы спорил!
Вероятно, в переносе сайта на друпал с недрупала с поисковым трафиком.
301 редирект на нормальные URL. На хорошем сайте ~ через месяц поисковики забудут о старом мусоре и полюбят ещё больше (проверено на 4 пациентах с джумлы + 1 в процессе).
Ну, если б я умел делать редирект с таких кривых урлов (Redirect такие символы тоже не понимает).
И потом, в моем случае пришлось бы автоматизировать, т.к. овер 10к страниц таких.
path_redirect отлично понимает, по крайней мере если напрямую вставить в БД
Только в .htaccess на свой скрипт и [#11753]в нём 301[/#]
Бида бида, он простой как 2 байта переслать
Абсолютно верно. Самопис на 6 переносил,около сотни страниц нужно было поклеить - через месяц всё стало ещё лучше индексироваться.
И страниц 30 наверно не клеил-сами проиндексировались.
никто не мешает туда ставить index.php
RewriteCond %{QUERY_STRING} ^p=(.*)$
#Редиректим сюда
RewriteRule ^(.*)$ /index.php?q=%1 [NC,R=301,L]
#Или сюда, как больше нравится
#RewriteRule ^(.*)$ /%1? [NC,R=301,L]
Drupal мешает. Посмотрите, как у вас будут строится ссылки, и вобще все что строится через систему меню Drupal-а.
Anonym_tsk
А вот ваш вариант действительно хорош.
http://www.drupal.ru/index.php?q=node/86207 эм, а это что?
Ага, а система меню у вас тоже такие ссылки будет строить? И все, что проходит через функцию url? С отключенными чистыми ссылками пути будут строится как http://www.drupal.ru/?q=node/86207
в первом сообщении не указано что бы Друпал сам строил такие ссылки, там написано что нужно что бы Друпал обрабатывал такие ссылки
Еще раз, система меню Drupal будет строить ссылки вида /index.php?q=bla-bla? "Учите матчасть" и почитайте про то, как это воспринимают поисковики, как выше сказал divined