Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

gremio10

[Resolvido] Colocar arquivos Zend no ar

Recommended Posts

Fala galera, olha só, eu estou usando modulos na minha aplicação.

 

Quando acontece algum tipo de erro, o erro é sempre de controller, não é um erro aonde ele diz o que está e o que está errado.

bom, coloquei os arquivos online, em um host fora do pais, e estava testando, então lembrei do que o Matias Rezende que poderia ser algum tipo de problema no meu .htaccess, então eu tirei ele, e rodei a aplicação, ficou na mesma, então fui na url e adicionei um public/, então ele acessou minha index...

 

Mas quando eu cliquei em outro link, ele me retorna este erro:

 

Not Found

 

The requested URL /public/public/symptoms was not found on this server.

 

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

 

então eu percebi que o problema é o .htaccess...

 

Minha pasta está assim:

 

/
www/
 liga/
   application
   docs
   library
   public/
     css
     js
     imgs
     index.php
     .htaccess #deletado
   tests
   .htaccess
   .zfproject.xml

 

no meu .htaccess:

 

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

 

 

O erro que eu comentei ele sempre mostra é esse: Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (error)'

 

Obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, é o seguinte, a pasta "public" serve para você saber quais arquivos devem estar acessíveis publicamente, ela não precisa ter o mesmo nome, na sua hospedagem ela pode ter o nome de public_html, htdocs e no seu caso o nome da pasta é "www".

 

Sendo assim, todos os arquivos que estiverem dentro da pasta "public" localmente envie para a pasta "www" no servidor.

 

Sua estrutura deve ficar assim:

 

application/
library/
www/
    css/
    js/
    imgs/
    index.php
    .htaccess

Compartilhar este post


Link para o post
Compartilhar em outros sites

Leozitho, cara, funcionou que é uma beleza, só que eu tive de colocar em uma pasta para que não seja vista quando acessar o link...

 

então ficou assim:

 

application/
library/
www/
  liga/
     css/
     js/
     imgs/
     index.php
     .htaccess

 

 

meu index.php:

 

<?php

// Define path to application directory
defined('APPLICATION_PATH')
   || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../../application')); #adicionei um ../

// Define application environment
defined('APPLICATION_ENV')
   || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'development'));

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
   realpath(APPLICATION_PATH . '/../../library'), #adicionei um ../
   get_include_path(),
)));

function printr( $_params )
{
   echo "<pre>";
       print_r( $_params );
   echo "</pre>";
}

/** Zend_Application */
require_once 'Zend/Application.php';

// Create application, bootstrap, and run
$application = new Zend_Application(
   APPLICATION_ENV,
   APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()
           ->run();

 

Só que quando tento acessar ele me retorna esse erro:

 

Warning: require_once(Zend/Application.php) [function.require-once]: failed to open stream: No such file or directory in ****index.php on line 25

 

Fatal error: require_once() [function.require]: Failed opening required 'Zend/Application.php' (include_path=':.:/usr/lib/php:/usr/local/lib/php') in *****index.php on line 25

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora percebi um erro no seu código, mude a seguinte linha:

 

realpath(APPLICATION_PATH . '/../../library'),

 

para:

 

realpath(APPLICATION_PATH . '/../library'),

 

Pois ele pega como referência o caminho da pasta "application" e não do diretório público onde está o arquivo index.php.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa, me quebrou um galhão também! Tava sofrendo como o Application aqui, só dava certo com Load::Class etc.

 

Você mexeu no arquivo bootstrap.php ou tá padrão??

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.