Anderson G M Olsen Postado Setembro 11, 2012 Compartilhar Postado Setembro 11, 2012 Bom todos sabem que não existe nativo ao whmcs um sistema de 404 - página não encontrada. Neste final de semana resolvi alterar a pasta do meu whmcs e até ajustar todos os links me deparei com um problema. Alguns links ficaram quebrados e aparecia uma imagem horrível. Então fui atrás de algo para criar uma página 404 para o whmcs. Achei vários Addons pagos... Como não queria gastar achei uma solução rápida e resolvi postar a alternativa aqui para o pessoal. 1. No .htaccess da raiz do whmcs adicione: ErrorDocument 404 /404.php 2. Na raiz do whmcs crie um arquivo 404.php com o seguinte código PHP dentro e salve: <?php define("CLIENTAREA",true); require("dbconnect.php"); require("includes/functions.php"); require("includes/clientareafunctions.php"); initialiseClientArea(); if ($_SESSION['uid']) { } $smartyvalues["variablename"] = $value; $templatefile = "404"; outputClientArea($templatefile); ?> 3. Dentro da pasta do seu template crie um arquivo chamado 404.tpl e dentro adicione a mensagem que você deseja que seja exibida quando uma página não for encontrada em seu whmcs! Observação: Vou deixar de exemplo o código que montei para o meu 404.tpl do template: <br /> <br /> <br /> <br /> <center><img src="http://suaempresa.com.br/templates/nomedotempalte/images/404.gif"/> <br /> <br /> <br /> <p><h1>404 - Página não Encontrada</h1></p> <p><h3>A página que você procura não foi localizada ou encontra-se em manutenção. Por favor informe nossa equipe de desenvolvimento o link que você está tentando acessar, através do e-mail <a href="mailto:[email protected]">[email protected]</a> para que seja ajustado essa página.</h3></p></center> <br /> <br /> <br /> <br /> É isso ai ... simples solução que já resolve alguma coisa... Anexo o 404.gif que usei em meu site para quem quiser usar. Link para o comentário Compartilhar em outros sites More sharing options...
HostYola Networks ®!. Postado Setembro 11, 2012 Compartilhar Postado Setembro 11, 2012 Valeu!, vou personalizar ele mais um pouco e começar a utilizá-lo. Link para o comentário Compartilhar em outros sites More sharing options...
AdrianoC Postado Setembro 11, 2012 Compartilhar Postado Setembro 11, 2012 valeu vou dar uma personalizada também e usar.... Link para o comentário Compartilhar em outros sites More sharing options...
edvan Postado Setembro 11, 2012 Compartilhar Postado Setembro 11, 2012 Bom todos sabem que não existe nativo ao whmcs um sistema de 404 - página não encontrada. Neste final de semana resolvi alterar a pasta do meu whmcs e até ajustar todos os links me deparei com um problema. Alguns links ficaram quebrados e aparecia uma imagem horrível. Então fui atrás de algo para criar uma página 404 para o whmcs.... Anderson, Parabéns pela dica. Se me permite gostaria de dá uma contribuição... e irei adicionar essa dica no WHMCS.blog.br ( obviamente que darei o crédito a você ). No arquivo 404.php fica legal personalizar dessa forma: <?php define("CLIENTAREA",true); require("dbconnect.php"); require("includes/functions.php"); require("includes/clientareafunctions.php"); $pagetitle = "Página não Encontrada"; $pageicon = "images/support/clientarea.gif"; $breadcrumbnav = '<a href="index.php">'.$_LANG['globalsystemname'].'</a>'; $breadcrumbnav .= ' > <a href="404.php">Erro - Página não Encontrada</a>'; initialiseClientArea($pagetitle,$pageicon,$breadcrumbnav); $templatefile = "404"; outputClientArea($templatefile); ?> E no .tpl fiz uma customização: <br /> <br /> <br /> <br /> <center><img src="templates/{$template}/images/404.gif"/> <br /> <br /> <br /> <p><h1>404 - Página não Encontrada</h1></p> <p><h3>A página que você procura não foi localizada ou encontra-se em manutenção. Por favor informe a nossa equipe o link que você está tentando acessar, através do <a href="submitticket.php?step=2&deptid=3&subject=URL%20com%20Erro!&message=Favor%20informar%20aqui%20a%20URL%20com%20erro!">link</a> para que seja ajustado essa página.</h3></p></center> <br /> <br /> <br /> <br /> Em &deptid=3 você substitui pelo id do departamento que desejar. Veja como ficou: Se o visitante/cliente clicar no link. Assim será possível personalizar o título da página e a compatibilidade com charset ISO e UTF-8... além da tag {$template} que irá preencher o template utilizado! Abraços Link para o comentário Compartilhar em outros sites More sharing options...
Anderson G M Olsen Postado Setembro 11, 2012 Autor Compartilhar Postado Setembro 11, 2012 Anderson, Parabéns pela fica. Se me permite gostaria de dá uma contribuição... e irei adicionar essa dica no WHMCS.blog.br ( obviamente que darei o crédito a você ). No arquivo 404.php fica legal personalizar dessa forma: <?php define("CLIENTAREA",true); require("dbconnect.php"); require("includes/functions.php"); require("includes/clientareafunctions.php"); $pagetitle = "Página não Encontrada"; $pageicon = "images/support/clientarea.gif"; $breadcrumbnav = '<a href="index.php">'.$_LANG['globalsystemname'].'</a>'; $breadcrumbnav .= ' > <a href="404.php">Erro - Página não Encontrada</a>'; initialiseClientArea($pagetitle,$pageicon,$breadcrumbnav); $templatefile = "404"; outputClientArea($templatefile); ?> E no .tpl fiz uma customização: Em &deptid=3 você substitui pelo id do departamento que desejar. Veja como ficou: Se o visitante/cliente clicar no link. Assim será possível personalizar o título da página e a compatibilidade com charset ISO e UTF-8... além da tag {$template} que irá preencher o template utilizado! Abraços Nem tinha pensado nisso, trocar o e-mail pelo formulário de contato! Perfeito ... Pode adicionar a dica sim! Melhor do que sair comprando Addons americanos! Simples e Resolve o problema! Já ajustei com a sua modificação! Link para o comentário Compartilhar em outros sites More sharing options...
edvan Postado Setembro 12, 2012 Compartilhar Postado Setembro 12, 2012 Nem tinha pensado nisso, trocar o e-mail pelo formulário de contato! Perfeito ... Pode adicionar a dica sim! Melhor do que sair comprando Addons americanos! Simples e Resolve o problema! Já ajustei com a sua modificação! Blz. No .htaccess eu tive problemas ao utilizar assim: ErrorDocument 404 /404.php Daí coloquei a URL completa e funcionou: ErrorDocument 404 http://URL_DO_404/404.php Link para o comentário Compartilhar em outros sites More sharing options...
Anderson G M Olsen Postado Setembro 12, 2012 Autor Compartilhar Postado Setembro 12, 2012 Blz. No .htaccess eu tive problemas ao utilizar assim: Daí coloquei a URL completa e funcionou: Que coisa ... aqui rodou direto so colocando o ErrorDocument 404 /404.php ... Pelo menos achou uma saída para quem sofra deste mesmo problema! Link para o comentário Compartilhar em outros sites More sharing options...
edvan Postado Setembro 12, 2012 Compartilhar Postado Setembro 12, 2012 Que coisa ... aqui rodou direto so colocando o ErrorDocument 404 /404.php ... Pelo menos achou uma saída para quem sofra deste mesmo problema! Seria bom que nesse redirecionamento informasse a URL que o cliente tentou acessar. Poderia até fazer uma notificação automática ( log de atividades ) ou via URL formulário do suporte. Link para o comentário Compartilhar em outros sites More sharing options...
HostYola Networks ®!. Postado Setembro 12, 2012 Compartilhar Postado Setembro 12, 2012 Seria bom que nesse redirecionamento informasse a URL que o cliente tentou acessar. Poderia até fazer uma notificação automática ( log de atividades ) ou via URL formulário do suporte. Ficaria legal, vou tenta aqui. Link para o comentário Compartilhar em outros sites More sharing options...
Visitante Postado Setembro 12, 2012 Compartilhar Postado Setembro 12, 2012 Prezados, É exatamente o que utilizo aqui, é bem simples e pode ser melhorado infinitamente, pode ser feito um código PHP, ao acessar a página é inserido um registro informando o que eu desejar, como URL, ip, de onde veio, navegador, etc. num MySQL e podendo ser exibido onde eu quiser. O que ocorre Edvan, o que a função ErrorDocument não é um redirecionamento, e sim como o include(''); do PHP, ela inclui a página que tu quiser. Ao dar um erro que o servidor não localiza o arquivo desejado, ele inclui a página com o Apache. Edvan, eu creio que não funciona pra você, talvez porque o RewriteEngine não esteja ligado. Tente inserir da seguinte maneira: RewriteEngine On ErrorDocument 404 /404.php Espero que lhe ajude! :) Cordialmente, Ricardo Cavalcante. Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados