Bru_ce 53 Denunciar post Postado Novembro 30, 2012 Boa Tarde Amigos, Preciso fazer arrumar o site aqui do trampo, e quero deixar a URL "bonitinha" ! Atualmente ela esta assim: http://www.site.com.br/quem-somos.php Gostaria que ela ficasse assim: http://www.site.com.br/quem-somos Já tentei configurar o htaccess, porém sem sucesso, alguém poderia me ajudar de uma forma prática me dando uma solução para meu problema ? Obrigado ! :natalbiggrin: Compartilhar este post Link para o post Compartilhar em outros sites
Natanael.php 0 Denunciar post Postado Novembro 30, 2012 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Barbosa 1 Denunciar post Postado Novembro 30, 2012 Você deve estudar .HTACCESS, vou ainda estou no começo desse estudo, mas já consegui fazer alguma coisa. 1º você cria o .htaccess que é um arquivo que só possui esta extenção ele não tem nome, no meu caso está assim: ele precisa ficar na raiz do site RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-f RewriteCond %{SCRIPT_FILENAME} !-d RewriteRule ^(.*)$ index.php?url=$1 Procura na net que você achará muita coisa falando sobre ele, aqui mesmo no forum um vez deixaram para mim uma aula completa. no index, você recupera o valor da url passada, assim $url = $_GET['url']; $urlE = explode("/", $url); $arquivos = $urlE[0]; $post = $urlE[1]; $paginas = array('home','quem-somos','servicos','estrutura-metalica','manutencao-predial-residencial','construcao-civil','clientes','fale-conosco', 'manutencao', 'pintura'); include_once("header.php"); if(isset($arquivos) && in_array($arquivos, $paginas)){ include "nav/$arquivos.php"; } else if(isset($arquivos) && $arquivos == ''){ include 'nav/home.php'; } Compartilhar este post Link para o post Compartilhar em outros sites
Bru_ce 53 Denunciar post Postado Novembro 30, 2012 Irei tentar, funciona em LOCALHOST ? Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Barbosa 1 Denunciar post Postado Novembro 30, 2012 Irei tentar, funciona em LOCALHOST ? sim, mas na configuração você precisa dizer ao php onde ele irá buscar a configuração, exemplo: // conexão $servidor = 'localhost'; $usuario = 'root'; $senha = ''; $db = 'urlamigavel'; $urlBase = 'http://localhost/jbmanutencao'; // no menu <li><a href="<?php echo $urlBase; ?>/quem-somos" title="sdfsdfdsaf">Quem Somos</a></li> +- isso Compartilhar este post Link para o post Compartilhar em outros sites
Bru_ce 53 Denunciar post Postado Novembro 30, 2012 Marcos, funcionou Cara. Meu .HTACCESS ficou assim então: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php Você poderia me explicar cada linha por favor ? PHP <?php $urlBase = 'http://localhost/bruno'; ?> HTML <li> <a href="<?php echo $urlBase; ?>/quem-somos" title="URL Amigável">Quem Somos</a> </li> Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Barbosa 1 Denunciar post Postado Novembro 30, 2012 Marcos, funcionou Cara. Meu .HTACCESS ficou assim então: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php Você poderia me explicar cada linha por favor ? PHP <?php $urlBase = 'http://localhost/bruno'; ?> HTML <li> <a href="<?php echo $urlBase; ?>/quem-somos" title="URL Amigável">Quem Somos</a> </li> Na urlbase é onde pegará o arquivo, aqui estou dizendo para pegar em localhost o arquivo quem-somos, quando você colocar no servidor você colocar o endereço, www-seu-site.com.br é isso agora veja bem, o assunto é bem amplo, caso você vá pegar as informações no BD a lógica é a mesma, mas muda algumas coisas na estrutura. Compartilhar este post Link para o post Compartilhar em outros sites
Bru_ce 53 Denunciar post Postado Novembro 30, 2012 Legal, e no .HTACCESS o que seria cada linha ? Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Barbosa 1 Denunciar post Postado Novembro 30, 2012 A primeira linha linha é para ativar o módulo. A segunda e terceira linha é para ignorar arquivos e diretorios respectivamente A última linha joga a string para o php lê. Compartilhar este post Link para o post Compartilhar em outros sites
Bru_ce 53 Denunciar post Postado Novembro 30, 2012 não entendi essa linha mano, RewriteRule ^(.*)$ $1.php estaria escrevendo uma nova regra certo ? para que serve esse "1" ? tentei tirar e deu erro .. Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Barbosa 1 Denunciar post Postado Novembro 30, 2012 não entendi essa linha mano, RewriteRule ^(.*)$ $1.php estaria escrevendo uma nova regra certo ? para qye serve esse "1" ? tentei tirar e deu erro .. No seu caso aí, ñ sei o q você quis fazer, mas no caso abaixo é assim: estou dizendo para o php que no arquivo index.php ele irá receber o valor que será passado ($1 qualquer valor) para a variável url. index.php?url=$1 Compartilhar este post Link para o post Compartilhar em outros sites
Bru_ce 53 Denunciar post Postado Novembro 30, 2012 entendi, correto ! Vlw resolvido ! :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Natanael.php 0 Denunciar post Postado Novembro 30, 2012 não entendi essa linha mano, RewriteRule ^(.*)$ $1.php estaria escrevendo uma nova regra certo ? para que serve esse "1" ? tentei tirar e deu erro .. Bom no caso ae $1 é tipo uma variável... <qualquerCoisa>.php O que a regra diz é quando você digitar algo como: http://www.site.com.br/quem-somos ele vai direcionar para http://www.site.com.br/quem-somos.php Qualquer coisa que você digitar na url ele vai adicionar .php no final. Compartilhar este post Link para o post Compartilhar em outros sites
Bru_ce 53 Denunciar post Postado Novembro 30, 2012 Hum, agora entendi perfeitamente, Obrigado Man ! Compartilhar este post Link para o post Compartilhar em outros sites
Natanael.php 0 Denunciar post Postado Novembro 30, 2012 Este código é apenas um exemplo para resolver seu problema conforme você escreveu la em cima. Mais recomendo que pesquise na internet outros exemplos de como gerenciar URLs amigáveis. O exemplo do Marcos Barbosa já eh um melhor que esse que eu falei. Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Barbosa 1 Denunciar post Postado Novembro 30, 2012 Este código é apenas um exemplo para resolver seu problema conforme você escreveu la em cima. Mais recomendo que pesquise na internet outros exemplos de como gerenciar URLs amigáveis. O exemplo do Marcos Barbosa já eh um melhor que esse que eu falei. Tem que pesquisar e estudar, pois quando se trata de banco de dados, tipo www.seusite.com.br/bolsa-cor-de-rosa você trata isso antes. Compartilhar este post Link para o post Compartilhar em outros sites