htaccess для переноса поисковых ссылок

Discussion in 'PHP' started by GAiN, 28 Apr 2013.

  1. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    нужно сделать так:
    ссылка имеет такой вид:

    http://sitename.ru/load/software/programs/virtual_audio_cable/31-1-0-1077

    в движке dle вот такой вид: http://sitename.ru/load/6-virtual_audio_cable.html

    вот эти данные переменные: software/programs/virtual_audio_cable/31-1-0-1077

    можно ли сделать в htaccess что бы при переходе на ссылки вида http://sitename.ru/load/software/programs/virtual_audio_cable/31-1-0-1077 перенаправляло на её копию на dle вот с таким видом: http://sitename.ru/load/6-virtual_audio_cable.html
    ссылок много, нужно чтобы когда домен http://sitename.ru будет прикреплён к dle движку - то при переходе со старых ссылок из поисковиков пользователь попадал на этот же материал но уже в dle движке
     
  2. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Была подобная задача, ссылок было ~3000. Переносили проект с одного движка на другой.

    Так как это было в интересах SEOшника попросил его составить csv файл URL_было;URL_стало. После этого в код движка, где он проверяет на 404 (не нашел в базе страницы, например) вставил такой код.

    PHP:
    @set_time_limit(0);
    $file_handle fopen(ABSOLUTE_PATH.'301.csv'"r");
    while (!
    feof($file_handle)) {
       
    $line fgets($file_handle);
       if(
    strpos($line,$_GET['rewrite'])!==false)
       {
        list(
    $rew,$path)=explode(';',$line);
        
    $path=trim($path);
        if(
    preg_match("/".preg_quote($_GET['rewrite'],"/")."$/",$path))
        {
            
    header('HTTP/1.1 301 Moved Permanently');
            
    header('Location: '.$rew);
            exit;
        }
       }
    }
    fclose($file_handle);
    Получается если движок не находит страницу, он ищет ее в файле 301.csv, нашел перенаправил, не нашел 404
     
    _________________________
    1 person likes this.
  3. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    а как файл 301.csv составлять ?
    как то так :
    site.ru/12/45=site.ru/load/54584.html
     
  4. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Открываешь Excel в одной колонке пишешь новый, куда перенаправить в другой старый... далее сохраняешь как csv...
     
    _________________________