MultiSites

  • Identifique-se para criar novos tópicos neste fórum
  • Visitantes anônimos não podem postar neste fórum
Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

engraçado, eu estava quase dormindo quando rolou uma ideia: mais de um portal em XOOPS compartilhando o mesmo banco de dados. E não só: os mesmos arquivos (mas não as mesmas permissões e com todas as configurações personalizadas).

Salomão  Membro De: Brasília - DF - Brasil  Postagens: 503

Mikhail Miguel escreveu:
Engraçado, eu estava quase dormindo quando rolou uma ideia: mais de um portal em XOOPS compartilhando o mesmo banco de dados. E não só: os mesmos arquivos (mas não as mesmas permissões e com todas as configurações personalizadas).

Eu tinha pensado isso uma vez, lembra? Quando eu tinha uma hospedagem com um banco de dados e queria fazer em um domínio com subdomínios diferentes compartilhando a mesma base de dados...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Salomão escreveu:
Mikhail Miguel escreveu:
Engraçado, eu estava quase dormindo quando rolou uma ideia: mais de um portal em XOOPS compartilhando o mesmo banco de dados. E não só: os mesmos arquivos (mas não as mesmas permissões e com todas as configurações personalizadas).

Eu tinha pensado isso uma vez, lembra? Quando eu tinha uma hospedagem com um banco de dados e queria fazer em um domínio com subdomínios diferentes compartilhando a mesma base de dados...

Tranquilo, basta substituir o arquivo mainfile.php por isso:

If (!(isset($subdomínio)))
{
$subdomínio = $HTTP_HOST;
$subdomínio = str_replace("","",$subdomínio);
$subdomínio = str_replace(".com","",$subdomínio);
$subdomínio = str_replace(".br","",$subdomínio);
}
If (!(empty($subdomínio)))
{
Include($subdomínio."mainfile.php");
}
?>


Observação: ainda estou para avisar sobre esse "hack" no xoops.org ... o que eles têm só funciona com domínios diferentes, e não com subdomínios de um mesmo domínio... apesar de ser óbvio, acho que muita gente não notou...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

yes! o compartilhamento de users também está funcionando! [ave]

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

cara, estou achando demais isso... está dando para criar mais de um portal usando os mesmos arquivos e, se quiser, compartilhando o mesmo banco de dados dos utilizadores... pelos testes, não obtive problemas de sessões... só não entendo o porquê disso ainda não constar no núcleo do XOOPS, é muito prático!
[biruta]

Salomão  Membro De: Brasília - DF - Brasil  Postagens: 503

Assim, dá para explicar direito? Eu estava quase conseguindo dormir (finalmente) mas não consegui entender isso... Agora acho que não durmo de novo essa semana...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Salomão escreveu:
Assim, dá para explicar direito? Eu estava quase conseguindo dormir (finalmente) mas não consegui entender isso... Agora acho que não durmo de novo essa semana...

Claro!

Exemplo: para rodar 3 portais diferentes, em 3 subdomínios diferentes, usando os mesmos arquivos e o mesmo banco de dados, basta substituir o mainfile.php por esse código:

If (!(isset($subdomínio)))
{
$subdomínio = $HTTP_HOST;
$subdomínio = str_replace("","",$subdomínio);
$subdomínio = str_replace(".com","",$subdomínio);
$subdomínio = str_replace(".net","",$subdomínio);
$subdomínio = str_replace(".org","",$subdomínio);
}
If (!(empty($subdomínio)))
{
Include($subdomínio."mainfile.php");
}
?>

Pra que esses 3 portais compartilhem a mesma tabela de utilizadores, basta substituir o código:

$xoopsDB->prefix("

De todos os arquivos do XOOPS pelo código:

$xoopsDB->("xoops_


Observação: dei como exemplo 3 sites, mas pode ser muito mais.
Obs2: este portal está rodando em conjunto com mais 4 sites, e mais tarde farei o compartilhamento dos utilizadores.

[biruta]

Salomão  Membro De: Brasília - DF - Brasil  Postagens: 503

Ah, agora saquei... Quem sabe com isso dê para dormir essa semana.
Ainda está em tempo...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Salomão escreveu:
Ah, agora saquei... Quem sabe com isso dê para dormir essa semana.
Ainda está em tempo...

Hehe... estou feliz, não imaginava que pode ser tão simples... com algo assim, é teoricamente é possível criar dezenas de portais em XOOPS numa única conta de server free, e passar adiante para novatos... tipo, já comentei sobre isso com o gilberto... estava pensando em montar um "xoops fest", tirar um dia de um fim de semana para instalação gratuita em massa do XOOPS em servidores free... esse sistema de compartilhamento facilitaria muito as coisas, bastaria dar um insert no sql com os prefixos das tabelas renomeados e pronto...

Salomão  Membro De: Brasília - DF - Brasil  Postagens: 503

Se for algo fácil assim, conte comigo.
Temos de ajudar o pessoal a usar o XOOPS, e quanto mais fácil e prático, melhor...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Salomão escreveu:
Se for algo fácil assim, conte comigo.
Temos de ajudar o pessoal a usar o XOOPS, e quanto mais fácil e prático, melhor...

Sim, e só será feito da forma fácil, com algum sistema automatizado de instalação... (há muitas formas de instalar o XOOPS "em massa").

Salomão  Membro De: Brasília - DF - Brasil  Postagens: 503

É, uma espécie de 'mini-script' de automação.
Mas só recomendo isso para aqueles que já tem um certo conhecimento, senão a versão 'comentada' utilizada atualmente não serviria de nada...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Salomão escreveu:
É, uma espécie de 'mini-script' de automação.
Mas só recomendo isso para aqueles que já tem um certo conhecimento, senão a versão 'comentada' utilizada atualmente não serviria de nada...

Bem, dá para instalar várias cópias do XOOPS em diversas contas gratuitas (usando um script para cópia dos arquivos entre paths do mesmo server)... ou criar vários portais no mesmo espaço, usando ou não o mesmo banco de dados... neste último caso, bastaria preparar o XOOPS, instalar os módulos, exportar o bd, renomear o prefixo "xoops_" para um outro qualquer, inserir de novo no banco de dados, fazer uma cópia do mainfile, e pronto... mais um portal gerado em segundos, ocupando apenas espaço a mais no banco de dados...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

hehe, esqueça tudo o que digitei, isso não dá certo como descrevi... errei ao fazer as substituições.
[ruim]

wcr  Iniciante   Postagens: 12

Tem um artigo legal sobre isso no wiki do xoops.org

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

wcr escreveu:
Tem um artigo legal sobre isso no wiki do xoops.org

Eu sei, mas nada referente às alterações necessárias para compartilhar os mesmos utilizadores... o pior é que já fiz isso, só que é tanta coisa que nem me lembro como foi... (até as sessões era compartilhadas).

Observação: há 5 portais usando os mesmos arquivos deste site, mas com utilizadores distintos...

ricardo  Iniciante   Postagens: 3

O problema é o seguinte:

Na verdade não entendi direito.

Tenho um domínio.

Domínio.com.br (na dica tenho de incluir o replace .br certo?

O XOOPS esta em xoops.domínio.com.br rodando legal.

Peguei o mainfile.php e o renomeei para xoops.mainfile.php

E criei outro mainfile.php com o código que você passou com as alterações.

Inclui o .br e o domínio sem ponto (esta certo né?)

Bem onde acesso. xoops.domínio.com.br funciona beleza, esta rodando 100%

O problema esta em como rodar o outroxoops.domínio.com.br

Quais arquivos eu preciso levar para dentro da pasta do segundo subdomínio? Coloquei o index.php lá e não funcionou.

Alguem me ajude, mostrando um passo-a-passo do que se deve fazer, porque a dica aqui esta meio confusa.

Lehy Matheus  Participativo De: Ponta Grossa  Postagens: 132

Boa noite!

Mikhail Miguel escreveu:
...bem, dá para instalar várias cópias do XOOPS em diversas contas gratuitas (usando um script para cópia dos arquivos entre paths do mesmo server)...

Isso ficaria muito diferente se quisessemos sincronizar bancos de dados diferentes, trata-se de um assunto sobre espelhar portais que discutimos bastante por aqui e não chegamos a um denominador final.

O objetivo é obter segurança mesmo baseando nossos portais em servidores gratuitos que, de repente, podem estar "fora do ar".

Atenciosamente.

Lehy

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

ricardo escreveu:
O problema é o seguinte: Na verdade não entendi direito.
Tenho um domínio. domínio.com.br (na dica tenho de incluir o replace .br certo? O XOOPS esta em xoops.domínio.com.br rodando legal Peguei o mainfile.php e o renomeei para xoops.mainfile.php e criei outro mainfile.php com o código que você passou com as alterações inclui o .br e o domínio sem ponto (esta certo né?) Bem onde acesso. xoops.domínio.com.br funciona beleza, esta rodando 100%
O problema esta em como rodar o outroxoops.domínio.com.br
Quais arquivos eu preciso levar para dentro da pasta do segundo subdomínio? Coloquei o index.php lá e não funcionou.
Alguem me ajude, mostrando um passo-a-passo do que se deve fazer, porque a dica aqui esta meio confusa.

Oi! perdão pela demora em responder, estou meio atolado com essa coisa de reformar o site,... por favor, me passe os detalhes, as informações reais do seu servidor... farei um script e posto aqui neste thread.

Obrigado!

ini  Ocasional   Postagens: 28

Mikhail Miguel escreveu:
Oi! perdão pela demora em responder, estou meio atolado com essa coisa de reformar o site,... por favor, me passe os detalhes, as informações reais do seu servidor... farei um script e posto aqui neste thread.

Obrigado!

Aproveitando sua boa vontade:

Quero fazer dois portais com um banco de dados: um sobre arte, outro sobre cultura.
Eles precisam ter em comum: utilizadores, fórum, links, downloads.
Eles precisam ter separado: -enquetes, notícias, artigos, contato, temas(layout)
Site 01: domínio.net/arte.
Site 02: domínio.net/cultura.

[piscadinha]

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

ini escreveu:
Mikhail Miguel escreveu:
Oi! perdão pela demora em responder, estou meio atolado com essa coisa de reformar o site,... por favor, me passe os detalhes, as informações reais do seu servidor... farei um script e posto aqui neste thread.

Obrigado!

Aproveitando sua boa vontade:

Quero fazer dois portais com um banco de dados: um sobre arte, outro sobre cultura.
Eles precisam ter em comum: utilizadores, fórum, links, downloads.
Eles precisam ter separado: -enquetes, notícias, artigos, contato, temas(layout)
Site 01: domínio.net/arte.
Site 02: domínio.net/cultura.

[piscadinha]

Opa, pára tudo! arte e cultura? gostaria muito de ser colaborador desse site... se for poassível, entre em contato via inst msger!

Quanto ao seu caso, por favor, dê todas as informações reais preu te enviar o script pronto para isso... depois eu crio um tutorial, mas como estou sem tempo nestes dias, fica mais fácil digitar os códigos.

Forte abraço,

Mikhail miguel.

ricardo  Iniciante   Postagens: 3

por favor, me passe os detalhes, as informações reais do seu servidor... farei um script e posto aqui neste thread.
Obrigado!

Vou colocar os dados reais.

1) http://xoops.skill.com.br (onde vai ficar a instalação do xoops. (as tabelas do banco estão xoops_ )

1) http://escola.skill.com.br (outro portal usando os mesmos arquivos de xoops.skill.com.br) (as tabelas estão escola_

2) http://cybercaffe.skill.com.br (outro portal usando os mesmos arquivos de xoops.skill.com.br) (as tabelas estão cyber_)

Gostaria de saber quais os arquivos devo copiar para os subdomínios.

Lucas T. D. S.  Ocasional De: Recife - Pernambuco - Brasil  Postagens: 30

Já consegui fazer algo parecido com isso. Do modo que eu fz, você precisaria criar portais com arquivos independentes. Mas algumas tabelas seriam compartilhadas, para que os utilizadores sejam os mesmos para ambas as instalações.

Maiores detalhes aqui.

Eu instalei dois portais para testar essa modificação: Setor Alpha e Setor Beta.

Espero que isso possa ser útil, apesar de não ser uma ideia ainda totalmente concluída.

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Lucas escreveu:
Já consegui fazer algo parecido com isso. Do modo que eu fz, você precisaria criar portais com arquivos independentes.

Eu instalei dois portais para testar essa modificação: Setor Alpha e Setor Beta.

Espero que isso possa ser útil, apesar de não ser uma ideia ainda totalmente concluída.

Cara, fiz praticamente a mesma coisa, só compartilhei também as tabelas referentes às sessões, para o visitante não precisar se entrar de novo.

Detalhe: o XOOPS 2.1 virá de fábrica com essa opção de multisites encorporada, está sendo feito pelo ackbarr...

Lucas T. D. S.  Ocasional De: Recife - Pernambuco - Brasil  Postagens: 30

Eu tabém compartilhei a sessions e mais várias outras tabelas relacionadas diretamente aos utilizadores. Parece que o 50free.org está fora do ar exatamente nesse instante, mas quando voltar dá uma olhada lá nos portais de testes, que eu coloquei todas as tabelas compartilhadas lá.

Mas se já terá isso por padrão na próxima versão do XOOPS, então isso se torna de certa forma inútil...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Lucas escreveu:
Eu tabém compartilhei a sessions e mais várias outras tabelas relacionadas diretamente aos utilizadores. Parece que o 50free.org está fora do ar exatamente nesse instante, mas quando voltar dá uma olhada lá nos portais de testes, que eu coloquei todas as tabelas compartilhadas lá.

Mas se já terá isso por padrão na próxima versão do XOOPS, então isso se torna de certa forma inútil...

Acho que não... até agora, só "ouvi falar" que vão fazer, mas até agora... nada. Além disso, Provavelmente não será possível unir o banco de dados de dois portais diferentes quando essa versão for lançada... tipo, se você usar um XOOPS multisites hoje, terá facilidade de portar o banco de dados quando essa versão for lançada.

Observação: acho que multisites foi a única coisa que realmente presou no postnuke, putz... nem acredito que perdi tanto tempo com ele, Hehe...

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

hehehehe... seu código está idêntico ao meu, e não estamos sozinhos:

Reynaldo, (criador do XoopsShortUrls):

It's interesting we arrived at the same solution with different code.

My code is just a little different from yours:

Database.php:

Function prefix($tablename='')
{
$myCommonTables = array('avatar', 'avatar_user_link', 'online',
'priv_msgs', 'stories', 'topics', 'users');
$myPrefix = '';

if (in_array($tablename,$myCommonTables))
{
$myPrefix = 'xoops';
}
else $myPrefix = $this->prefix;

if ( $tablename != '' )
{
return $myPrefix .'_'. $tablename;
}
else.
{
return $myPrefix;
}
}

As I don't use the same files with different domains/subdomains I didn't have estou include the mainfile.php modification.

Thread completo:
https://xoops.net.br/modules/newbb/viewtopic.php?topic_id=16700&forum=14&post_id=71075#forumpost71075

Lucas T. D. S.  Ocasional De: Recife - Pernambuco - Brasil  Postagens: 30

De fato, é uma modificação bem óbvia.

O único problema é quando se compartilha as tabelas de avatares, porque as pastas uploads da cada portal são independentes. É necessário criar uma pasta padrão para todos os portais e modificar vários arquivos para dar certo.

ini  Ocasional   Postagens: 28

Mikhail Miguel escreveu:

Opa, pára tudo! arte e cultura? gostaria muito de ser colaborador desse site... se for poassível, entre em contato via inst msger!

Quanto ao seu caso, por favor, dê todas as informações reais preu te enviar o script pronto para isso... depois eu crio um tutorial, mas como estou sem tempo nestes dias, fica mais fácil digitar os códigos.

Forte abraço,

Mikhail miguel

Estou mudando de servidor e com trabalho até o pescoço.
Acredito que no decorrer da semana vou poder continuar no projeto. Daí entrarei aqui no fórum para te informar os detalhes.

Ps.: nos últimos dias tem sido dificil entrar neste portal e o www.xoops.net.br está off. Isso é por causa das reformas que você comentou antes?

Abraços

ini  Ocasional   Postagens: 28

Mikhail,
Vamos reacender este tópico? Isso me parece tão útil.

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466


Ini escreveu:
Mikhail,
Vamos reacender este tópico? Isso me parece tão útil.



Vamos sim,
Mas acho que foi praticamente solucionado... foi possível criar mais de um portal usando o mesmo banco de dados e até os mesmos arquivos... agora é passar tudo para o wiki

ini  Ocasional   Postagens: 28

Mikhail, quando estiver pronto você, por favor, avisa no fórum?

Grato.

hilal  Iniciante   Postagens: 2

Acho que estamos misturando diversas coisas distintas.
Uma é o compartilhamento de banco de dados, de diferentes formas (um só banco para diversos prefixos, scripts para compartilhar tabelas, etc.)
Outra são os subdomínios que apontam apra um emsmo diretório, que são aqueles scripts vindos do xoops.org
Outra são para os subdomínios que redirecionam para um subdiretório.
Estou particularmente interessado na última, afinal é uma forma bem eficiente de economziar espaço de hospedagem e infelizmente o meu provedor só tem subdoms que redirecionam para um diretório.

Smurfius  Iniciante   Postagens: 8

Too confuse, achei confuso vamo do meu jeito:

Contexto:
Fazendinha com vaquinha rodando linux.
Servidor: Apache (óbivio né), Mysql.

Site 1 : http://xworld.dyndns.org:10002
Site 2: http://smurfanime.dyndns.org:10002
Site 3: http://smurfporn.dyndns.org:10002

Caminho Físico.

../diretórioraizdohtml/
-----Dir1
-----Dir2
-----Dir3

O APACHE a requisição onde consta:

CASO:
Site 1 ===> Dir1 é o rootpath.
Site 2 ===> Dir2 é o rootpath.
Site 3 ===> Dir3 é o rootpath.

Beleza, isso é chamado virutal host é funciona bem (o meu funciona assim).

Agora:
Site 1 ===> aponta database 1
Site 2 ===> aponta database 2
Site 3 ===> aponta database 3

Bem agora me explica porque não é melhor eu somente mudar nos 3 portais (nem sei onde fica + não deve ser la muito dificil de achar) a tabela de utilizadores para uma database 4? Isso levando em conta que os arquivos do XOOPS são de tamanho irrelevante e tambem que diretórios como /images/shots seriam compartilhados entre todos meus sites?

Gilberto Galdino de Oliveira  Membro De: Guarulhos - São Paulo - Brasil  Postagens: 171

acho que porque do seu jeito tem que fazer 3 copias dos meus arquivos da fazenda, ops... do xoops.

Se eu entendi bem, pelo jeito do mikha até as vaquinhas, digo, arquivos são compartilhados alem dos users e do db.

hilal  Iniciante   Postagens: 2

Uma instalação completa do XOOPS com vários módulos e temas pode até ocupar 30 M. Com os scripts do Mikha é possível rodar 10, 20, 30 portais utilizando a mesma instalação (apenas cerca de 3k para cada subdomínio.mainfile.php) permitindo que esteja à sua mão todos os recursos que pretende utilizar, economizando valioso espaço de hospedagem e facilitando bastante as atualizações, localizações e alterações nos arquivos da sua base). Em outras palavras, é muito mais simples administrar um único engine do XOOPS servindo de base para 30 portais do que 30 diferentes sites.
Adicionalmente, para facilitar a adminsitração também é possível setar um portal com uma configuração mínima, mas já com temas e módulos instalados, dados de copyright e oturas cosias comuns a todos os portais e exportar o banco de dados apra os outros sites, ganhando com isto um tempo valioso, em especial se você adminsitra muitos sites.
Particularmente me tornei um fã daquele script. [

Acho que porque do seu jeito tem que fazer 3 copias dos meus arquivos da fazenda, ops... do xoops.

Se eu entendi bem, pelo jeito do mikha até as vaquinhas, digo, arquivos são compartilhados alem dos users e do db

Mikhail Miguel  Membro De: Angra dos Reis, RJ, Brasil  Postagens: 2466

Gostei muito dos resultados desse script. Os portais rodaram perfeitamenmte, sem conflitos.

Ah, e apesar de parecer o contrário, usar os mesmos arquivos, além de economizar espaço, também facilita muito as atualizações.

Outra coisa que esqueci de incluir neste tópico foi a ideia do Lucas de usar um script para a cópia via FTP do XOOPS, de um servidor a outro. Fiquei de boca aberta ao ver funcionar sem erros de timeout,... é incrivelmente prático e rápido! Sei lá, acho que não estamos dando a devida atenção a essa ideia.

hilal escreveu:
Uma instalação completa do XOOPS com vários módulos e temas pode até ocupar 30 M. Com os scripts do Mikha é possível rodar 10, 20, 30 portais utilizando a mesma instalação (apenas cerca de 3k para cada subdomínio.mainfile.php) permitindo que esteja à sua mão todos os recursos que pretende utilizar, economizando valioso espaço de hospedagem e facilitando bastante as atualizações, localizações e alterações nos arquivos da sua base). Em outras palavras, é muito mais simples administrar um único engine do XOOPS servindo de base para 30 portais do que 30 diferentes sites.
Adicionalmente, para facilitar a adminsitração também é possível setar um portal com uma configuração mínima, mas já com temas e módulos instalados, dados de copyright e oturas cosias comuns a todos os portais e exportar o banco de dados apra os outros sites, ganhando com isto um tempo valioso, em especial se você adminsitra muitos sites.
Particularmente me tornei um fã daquele script.

Poxa, obrigado mesmo por escrever de forma clara a ideia do script... Minhas descrições são sempre confusas demais, estou sempre num brainstorm... Por isso estou adorando o jeito "wiki" de escrever/documentar, facilitando a expressão do caos via textos não-lineares cheios de hiperlinks, alterações rápidas, contribuição de terceiros no "conserto" de ideias, etc... Hehehe, não repare... estou viajando.

guvilla  Iniciante   Postagens: 2


Seria muito legal você explicar DIREITO esse lance porque estou muito interessado. Muito msm!

Qual é arquivo preciso copiar e onde?

  Pesquisa avançada






Entrada

Codinome:


Senha:





Perdeu a senha?  |Cadastre-se!


Quem nos visita
Há 35 visitantes neste momento... (24 na seção Fóruns)

Associados: 0
Anônimos: 35

outros...

Banner XOOPS Cube