Acho que você está confundindo algumas coisas do DocumentRoot.
Vamos lá:
- Primeiro configure um virtualhosts (vhosts)
- suba os arquivos e seja feliz
Seguindo seu exemplo:
/home/icefusion/public (seu vhosts deve apontar para essa pasta, ou seja, ela é seu DocumentRoot).
Dentro dessa pasta publica você possui o seu .htaccess e o index.php do ZF.
Agora dentro da pasta /home/icefusion você terá que ter os arquivos do seu projeto zf, ou seja, a pasta application, library (onde fica o ZF), etc.
-------
No caso de uma hospedagem o processo é exatamente igual, mas podem ter uma variação com o nome da pasta public.
Vamos lá:
/home/logindahospedagem/www ---> Essa pasta normalmente é que tem acesso a web, onde colocamos nossos arquivos normalmente, ou seja, é o nosso DocumentRoot.
Sua os arquivos do seu projeto em: /home/logindahospedagem (incluindo a pasta public)
Nesse ponto você tem duas opções: Copiar o conteúdo da pasta public para a pasta www ou criar um link simbólico para que tudo que tenhamos na pasta public também tenha na pasta www (use o comando: ln -s public/* www/ )
-------
Outra situação que pode ocorrer: Você precisar que o ZF seja acessado dentro de um diretório:
www.site.com.br/projeto/Isso é muito simples também, basta subir normalmente os arquivos do projeto em /home/logindahospedagem/ e agora crie um link simbólico como um diretório: ln -s public/* www/projeto
Ou seja, quem acessar:
www.site.com.br/projeto vai na realidade acessar /home/logindahospedagem/public e seu projeto rodará normalmente.
-----
OBS gerais:
Eu trabalho muito com o ZF, logo, as vezes, tenho mais de um projeto zf dentro de um domínio, nesse caso faço o seguinte:
Dentro da pasta home da hospedagem (/home/logindahospedagem/) eu crio uma pasta chamada zf-app
Exemplo:
/home/logindahospedagem/zf-app/projeto1
/home/logindahospedagem/zf-app/projeto2
Todos os arquivos do projeto ficam dentro das pastas projeto 1, projeto2, projeto n (incluindo a pasta public).
Depois para fazer rodar fica muito simples: dentro da pasta www crie um link simbólico: ln -s zf-app/projeto1/public/ www/projeto1 e ln -s zf-app/projeto2/public/ www/projeto2
Logo, quando acessar:
www.site.com.br/projeto1 cairá no projeto do zend framework1, quando acessar:
site.com.br/projeto2 cairá no projeto numero 2.
No fim das contas, em TODAS as hospedagens que utilizo, sempre crio a pasta zf-app e coloco meu(s) projetos dentro e apenas crio um link simbólico. Mesmo que eu tenha apenas 1 projeto, ainda asim eu crio a pasta zf-app para os arquivos do projeto não ficarem soltos no mesmo nível que o documentroot.
Espero ter ajudado.
Abraços
--
@wesleywillians
www.schoolofnet.com