Pesquisa
Itens ativos
Posts mais lidos hoje
Login do usuário
Assine o RSS do Drupal-BR
Multisite com Drupal, conteúdos separados, mesmo BD de usuários
Bom dia.
Estou querendo montar um portal utilizando o drupal, quero usar a função multisite do drupal para obter mais de um portal usando uma mesma instalação, e quero utilizar o banco de registro dos usuários do site base para todos os portais, para que o usuário se registre em um e possa utilizar todos com o mesmo login.
O que já fiz:
1. Já pesquisei muito, ví que até nos fóruns americanos não tem muitas respostas para isto.
2. Instalei o drupal no meu dominio, criei um subdomínio apontando para a pasta onde está localizada a instalação do domínio, na pasta '/sites/all/' dessa instalação eu criei uma pasta com o nome do subdominio (teste.exemplo.com) e nela, eu inseri uma cópia do arquivo 'settings.php' encontrado na pasta '/sites/default'.
Meu problema está sendo o seguinte:
O site no subdominio carrega tudo que está no site base, e eu só quero que ele carregue as informações dos usuários, todo o resto quero começar do zero, conteúdos diferentes.
Já andei mexendo no $db_prefix, utilizando-o com array, mas o sistema continua carregando todo o conteúdo.
Até agora não achei nada que explique bem como posso fazer o que preciso.
Agradeço qualquer ajuda.
William Koch
- Por favor, se logue ou se registre para poder enviar comentários
- 416 leituras




Olá Willian, Dê uma
Olá Willian,
Dê uma olhadinha aqui http://drupal-br.org/node/411 e veja se isso lhe ajuda. Aí está uma boa explicação de como fazer o que você deseja.
Abraços,
--
Rafael Ferreira Silva
http://www.rafaelsilva.net
Continuando
Eu consegui montar o multisite, funciona e tal, mas não consigo compartilhar o registro dos usuários.
E ainda tem outra coisa, eu gostaria de poder manter os conteúdos em tabelas separadas, usando apenas a mesma base de usuários, será que é possível?
Respondendo com exemplo
Olá shiranui,
Para usar vários sites compartilhados, até onde eu sei, só é possível se todas as tabelas estiverem no mesmo banco de dados, da seguinte forma:
Depois de configurados os sites, em cada um você deve criar uma variavel $db_prefix como a abaixo
//para o site1
$db_prefix = array(
'default' => 'site1_',
'users' => 'compartilhada_',
'sessions' => 'compartilhada_',
'role' => 'compartilhada_',
'authmap' => 'compartilhada_',
'sequences' => 'compartilhada_',
);
//para o site2
$db_prefix = array(
'default' => 'site2_',
'users' => 'compartilhada_',
'sessions' => 'compartilhada_',
'role' => 'compartilhada_',
'authmap' => 'compartilhada_',
'sequences' => 'compartilhada_',
);
E assim, renomear as tabelas inserindo esses prefixos. Para todas as tabelas do site1, você deve prefixar com site1_ exceto as que estão prefixadas com compartilhada_ e o mesmo para o site2 onde você prefixa com site2_ as que não são compartilhadas e com compartilhada_ as que estão acima.
Teste e poste aqui resultado ou suas dúvidas.
Abraço,
--
Rafael Ferreira Silva
http://www.rafaelsilva.net
Está funcionando
Usando este método está funcionando certinho.
É uma pena que não dá para usar tabelas ou dbs separados para o conteúdo, fica só o prefixo diferente, complica pra fazer o backup.
Valeu pela ajuda, o readme na pasta sites explica como fazer, mas é muito superficial.
Cara, nada te impede de
Cara, nada te impede de criar sua autenticação.
basta usar os hooks
hook_auth
hook_user
o hook_auth espera um retorno TRUE ou FALSE se ele autenticou ou nao... o hook_user eh mais complexo soh vendo na API mesmo... seguem as urls das documentações!
http://api.drupal.org/api/5/function/hook_auth
http://api.drupal.org/api/5/function/hook_user
Fizemos isso aqui no trabalho nessa semana :)
--
Pedro Faria de Miranda Pinto
http://www.phpavancado.net/
Compartilhar categorias
Como poderia fazer para compartilhar só determinadas categorias entre os multi-sites?
Outra pergunta: tem como definir um site como site "mãe" das outras instalações e promover uma busca integrada em todos os sites?
Não tem como
Olá anapaulabm,
Infelizmente não há como compartilhar somente algumas categorias, pois o Drupal trabalha com compartilhamento de tabelas. Se você compartilhar as categorias(taxonomy e terms) você pode usar o TAC Lite para definir nível de permissão para cada site.
Não há como fazer um site mãe do ponto de vista de controle. Você pode definir o compartilhamento entre vários sites e usar um único para gerenciar o que for comum a vários, mas o que for específico, terá que ser gerenciado naquele site.
Essa questão do site mãe, você pode implementar um módulo para as funcionalidades que você deseja gerenciar, mas não será muito simples não.
Abraço,
--
Rafael Ferreira Silva
http://www.rafaelsilva.net
Não consegui fazer isso...
Prezados,
Li este artigo, entretanto estou com problemas ao fazer os passos. Eu não entendo como o drupal consegue ententer o que está nos diretórios onde coloco os outros site:
sites/site1/settings.php
sites/site2/settings.php
já li todos os artigos sobre multisites no drupal-br.org, mas não consigo entender.
Eu creio que falta apenas uma dica para entender esta situação... peço esta ajuda, pois estou precisando fazer esta tarefa(multisitios) no meu trabalho e estou enrolado.
Eu gostaria, se possível, uma ajuda passo-a-passo de como construir estes sites com a mesma base de dados.
Agradeço
Thiago Silveira