Reescreva o histórico de navegação e as sessões após o domínio de alterações do site

1

Um site que visito frequentemente mudou o nome de domínio (old.example.com - > new.example.com). Como posso facilmente reescrever todas as entradas no histórico e nas sessões do Firefox (guias ativas), como se o site estivesse sempre usando o novo domínio em vez do antigo? Você pode assumir que a sincronização não está ativada.

Minha situação é semelhante a Remova URLs por domínio do histórico do Firefox e da barra incrível . Essa resposta aceita é insuficiente, porque só explica como excluir os itens, enquanto eu quero saber como reescrever os itens. E que a questão nem sequer menciona a reescrita de guias ativas (eu tenho dúzias dessas guias, espalhadas por grupos de guias ).

    
por Rob W 27.07.2015 / 15:24

1 resposta

1

Acabei de reescrever meu histórico e minhas guias. Foram necessários dois passes, minha primeira tentativa falhou (= o histórico completo foi perdido), por isso, certifique-se de ter um backup do seu perfil antes de seguir as etapas a seguir.

Etapas para migrar seu histórico de http://old.example.com para https://new.example.org :

  1. Sair do Firefox.
  2. Crie um backup de seu perfil ( pelo menos sessionstore.js, places.sqlite e cookies.sqlite ).
  3. Edite sessionstore.js e substitua todas as ocorrências do domínio antigo pelo novo.
  4. Exclua places.sqlite-shm e places.sqlite-wal se eles existirem.
  5. Edite places.sqlite (por exemplo, usando sqlite3 ) e atualize o moz_favicons , moz_places e moz_hosts tabelas. Observe que algumas colunas têm uma restrição de exclusividade, portanto, se você visitou o novo site, exclua os novos itens do histórico (caso contrário, você poderá receber um erro como "Erro: falha na restrição UNIQUE: moz_favicons.url").

    -- Website icons (favorites and tabs)
    delete from moz_favicons where url like 'http://new.example.org%';
    update moz_favicons
      set url=replace(url, 'http://old.example.com', 'https://new.example.org')
      where url like 'http://old.example.com%';
    
    -- History
    delete from moz_places where url like 'https://new.example.org%';
    update moz_places
      set url=replace(url, 'http://old.example.com', 'https://new.example.org'),
      rev_host='gro.elpmaxe.wen.'        -- ".new.example.org", reversed
      where rev_host='moc.elpmaxe.dlo.'; -- ".old.example.com", reversed
    
    -- Host metadata, affects autocompletion in URL bar
    delete from moz_hosts where host='new.example.org';
    update moz_hosts set host='new.example.org' where host='old.example.com';
    
  6. Exclua cookies.sqlite-shm e cookies.sqlite-wal se eles existirem.

  7. Edite o cookies.sqlite :

    delete from moz_cookies where host like '%.new.example.org';
    update moz_cookies
      set baseDomain='example.org',
      host=replace(host, '.old.example.com', '.new.example.org')
      where host like '%.old.example.com';
    

    Observação: se você estiver migrando de http para https, convém definir a coluna isSecure como 1 para restringir o cookie a https.

  8. Agora inicie o Firefox e agora seu histórico e as sessões ativas devem estar usando o novo domínio.
por 28.07.2015 / 15:24