CakePHP Brasil

24 maio 2008

Sub-dominio para projetos em Cake

Arquivado em: Outros — Tags:, , , , — Juan Basso @ 5:53 pm

Pessoal,

Tenho esse host e a única utilidade está sendo para este blog. Porém, para não deixá-lo só para isso, estou abrindo para o pessoal que deseja cadastrar projetos em CakePHP.

Para quem quiser, basta responder este tópico ou mandar um email para jrbasso@cakephp-brasil.org que crio o subdominio e passo a senha. A parte do cake será compartilhada entre todos os projetos e será sempre usada a versão mais atual do SVN, atualizada a cada semana.

Não tenho muito a oferecer quanto a controle de versão, mas serve para publicarem o trabalho realizado. Se quiserem um servidor de SVN gratuito, recomendo o http://www.assembla.com/

PS: O nome do projeto não pode ser blog e www. :)

Instalação recomendada (mais segura)

Arquivado em: Tutoriais — Tags:, , , — Juan Basso @ 3:01 pm

Quando vamos instalar nossas aplicações em um servidor, temos o costume de pegar todo o conteúdo e jogar dentro de uma pasta ou direto na raiz do servidor de web. Digitamos o endereço e lá está nossa aplicação rodado no servidor! Uau! Porém, não é bem assim que devemos fazer. Em ambiente de desenvolvimento até podemos fazer, pois não temos nada tão seguro assim e é mais fácil para nós trabalharmos, mas para ambiente de produção recomenda-se fazer de outra maneira.

Colocar os diretórios app (ou o nome que você deu), cake e vendors dentro de um local não visível ao público (na maioria dos servidores de hospedagem, é a pasta fora de public_html ou www). Feito isso, mover o conteúdo da pasta app\webroot para o local público que você deseja que apareça. Por exemplo, se você quiser http://site/minhaapp/, coloque os arquivos da webroot (.htaccess, index.php, pastas img, js, css, …) dentro de public_html/minhaapp/.

Após feito isso, abrir o arquivo index.php para configurar o local que a pasta da sua aplicação está e onde está o cake também. Vamos supor que coloquei minha pasta app e cake dentro da pasta ’site’, sem visibilidade ao público (no mesmo nível de public_html) e que coloquei os arquivos de webroot na raiz do meu domínio (direto em public_html ou www), ficando da seguinte estrutura:

/
	site/
		app/
		cake/
	public_html/

No lugar de:

1
define('ROOT', dirname(dirname(dirname(__FILE__))));

Vamos substituir por:

1
define('ROOT', dirname(dirname(__FILE__)) . DS . 'site');

Com isso, ele informa que os diretórios de cake e app estão a um nível inferior e dentro de site.

Depois, substituir:

1
define('APP_DIR', basename(dirname(dirname(__FILE__))));

Por:

1
define('APP_DIR', 'app');

Assim informamos o nome da nossa pasta app. Ele irá procurar dentro de ROOT . APP_DIR.

Pronto! Alteramos o diretório dos nossos arquivos e não há perigo deles serem vistos pelo público. Assim se o Apache deixar de reconhecer os arquivos .php, o máximo que as pessoas verão é o index.php que não trás muita informação e ninguém rouba suas regras de negócio, login de banco de dados, etc.

Isto também está documentado no manual:

Powered by WordPress