Como ter várias aplicações no mesmo host? [RESOLVIDO]

1. Como ter várias aplicações no mesmo host? [RESOLVIDO]

Jonas Vinícios Guartieri de Assis
jonasguartieri

(usa Debian)

Enviado em 19/05/2013 - 22:25h

Olá!

Desenvolvi um framework MVC que possui suporte a múltiplas aplicações e módulos em PHP:

|-App1
|---Configurations
|---Modules
|---Models
|---Views
|---Controllers
|-App2
|---Configurations
|---Modules
|---Models
|---Views
|---Controllers
|-Public
|---.htaccess
|-.htaccess

A ideia é utilizar o mesmo framework, com todos os helpers e bibliotecas para todas as aplicações, garantido que tudo fique igualmente atualizado e centralizado. Para acessar a aplicação "App1", por exemplo, utilizo a url http://localhost/App1. O problema é que eu gostaria de utilizar um domínio independente para cada aplicação, sendo assim, poderia acessar "App1" através do endereço http://app1, mas isso não funcionaria com virtualhosts porque a url precisa ser tratada pelos .htaccess do framework.

Alguém sabe como fazer isso?

Desde já, agradeço à todos!


  


2. MELHOR RESPOSTA

Estefanio Brunhara
stefaniobrunhara

(usa CentOS)

Enviado em 21/05/2013 - 10:32h

O conceito de ter vários sites no mesmo servidor, acredito que você já o tenha, acho que você o diretório virtual "alias" vai lhe ajudar no que você precisa. Seria o mesmo caso de ter um único webmail para vários sites.


Então você por exemplo tem a app1.domnio.br que terá o diretório root em /home/app1.dominio.br

Você cria o /usr/share/framwork => http://app1.domnio.br/framework

O conceito de alias para quando precisar passar link e no que não for link você passa o path real.







3. Re: Como ter várias aplicações no mesmo host? [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 20/05/2013 - 04:01h

jonasguartieri escreveu:

Olá!

Desenvolvi um framework MVC que possui suporte a múltiplas aplicações e módulos em PHP:

|-App1
|---Configurations
|---Modules
|---Models
|---Views
|---Controllers
|-App2
|---Configurations
|---Modules
|---Models
|---Views
|---Controllers
|-Public
|---.htaccess
|-.htaccess

A ideia é utilizar o mesmo framework, com todos os helpers e bibliotecas para todas as aplicações, garantido que tudo fique igualmente atualizado e centralizado. Para acessar a aplicação "App1", por exemplo, utilizo a url http://localhost/App1. O problema é que eu gostaria de utilizar um domínio independente para cada aplicação, sendo assim, poderia acessar "App1" através do endereço http://app1, mas isso não funcionaria com virtualhosts porque a url precisa ser tratada pelos .htaccess do framework.

Alguém sabe como fazer isso?

Desde já, agradeço à todos!


Bom, não sei como você desenvolveu teu framework.
Mas você pode criar criar manualmente o registro VirtualHost, assim, um exemplo:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^([^\.]+)\.localhost$
RewriteCond /var/www/%1 -d
RewriteRule ^(.*)$ %1/$1 [L]

Options +FollowSymlinks
RewriteEngine On
RewriteBase /

Exemplificando:
RewriteCond %{HTTP_HOST} ^([^\.]+)\.localhost$ << localhost$ procura algumacoisa.localhost e captura a primeira parte do nome do host.
RewriteCond /var/www/%1 -d << garante que a cadeia capturada (por exemplo, algumacoisa) existe e é um sub-diretório de /var/www/
RewriteRule ^(.*)$ %1/$1 [L] << reescreve qualquer um dos pedidos *. do localhost para o sub-diretório /var/www/algumacoisa

Você só precisa criar os *.localhost no teu servidor Web e apontar no teu framework.
Se forem muitos você pode criar uma variável.
Não sei se é isso que você quer.
O problema de utilizar um framework é que você passa a ser dependente dele com seus benefícios e problemas.


4. Re: Como ter várias aplicações no mesmo host? [RESOLVIDO]

Jonas Vinícios Guartieri de Assis
jonasguartieri

(usa Debian)

Enviado em 20/05/2013 - 10:56h

O que eu quero fazer é poder acessar todas as aplicações no mesmo servidor e apontar apenas o domínio para o diretório virtual dela, como se estivesse dentro de um frame, sem mostrar a url real. Se não for possível, terei que utilizar uma cópia do meu framework com links simbólicos para cada aplicação.

Nesse meu framework eu não coloquei muitas frescuras, justamente pra não ficar dependente. É mais MNVC e o básico de CRUD e tratamento de erros mesmo. Aqueles helpers de HTML e frescuras dos grandes frameworks são coisas das quais quero distância.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts