Jump to content


Photo

Migrando Para Urls Amigáveis


  • Faça o login para participar
45 replies to this topic

#1 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 09/02/2006, 23:31

Este artigo se destina a fornecer o conhecimento necessário para implementação de uma técnica capaz de melhorar o posicionamento de seu site nas ferramentas de buscas por meio do uso de urls amigáveis aos buscadores. O objetivo não é fornecer um script pronto para ser colocado em cada site, mas sim dar uma idéia clara de como isso pode ser feito.

Vejam o exemplo de uma url comum:

www.site.com/materia.php?id=125

Por meio dessa url o webmaster pode identificar facilmente que deve exibir nesta página a matéria de número 125, mas o problema é a dificuldade que os buscadores têm para indexá-la. Digo isso por experiência própria com este fato já notório na comunidade. Uma página que depende de argumentos não é indexada facilmente e, no geral, não alcança posições tão boas quanto poderia nos resultados das buscas.

A solução é migrar deste formato para um otimizado para buscadores. Existem diversos meios de se alcançar o mesmo resultado, mas vou ensinar aqui a técnica que oferece mais controle. Seu site precisa estar em um servidor web Apache (o mais comum) para utilizá-la.

Para não fazer um artigo gigante vou apenas exemplificar o processo de migração em um site fictício de exemplo. Vamos lá!

Sabemos que é preciso passar aquele número, 125, para sabermos qual matéria exibir. Então nós vamos deixar funcional a seguinte url, em substituição àquela:

www.site.com/materia/125/peixes_africanos

Essa url se reveste de duas vantagens: não passa argumentos da forma tão repudiada pelos buscadores e pode trazer o título da página na url. Este segundo elemento é apenas um adicional benéfico, mas não imprescindível. Se uma das palavras da busca for encontrada na url, seu site ganhará muitas posições.

Agora chega de introdução e vamos ao método em sí!

Você vai encontrar no diretório principal do seu site, seja o "public_html" ou "www" (o local onde estão suas páginas) um arquivo chamado ".htaccess". É isso mesmo, ele não tem nome, apenas extensão. Se não existir, crie este arquivo. Nele você deve escrever o seguinte:

RewriteEngine on
RewriteRule !\.(gif|jpg|png|css)$ controle.php
São apenas duas linhas. Se o arquivo já existir e houver alguma coisa nele, adicione estas linhas logo no início.

A primeira linha habilita o uso do "mod_rewrite" no seu site. A segunda direcionada todo o tráfego (com exceção de arquivos gif, jpg, png e css) para uma determinada página, neste exemplo, "controle.php".

Agora, se você digitar no navegador algo como:

www.site.com
www.site.com/nada
www.site.com/texto/semsentido

Tudo isso vai cair em "controle.php". Esta se tornou sua página mais importante e é ela quem vai tratar e direcionar todo o tráfego dentro do seu site, mas vamos fazer com que tudo isso aconteça apenas nos bastidores. O que faremos é usar a url digitada como se fosse uma string e extrair dela o que for útil. Veremos como escrever em "controle.php" um bom código de tratamento para podermos usar as tão almejadas urls amigáveis!

Nosso site exemplo tem matérias e notícias, e nós vamos utilizar ambos. As urls vão seguir o seguinte padrão:

www.site.com/materia/125/peixes_africanos

www.site.com/noticia/523/oceano_secou

Nós vamos aproveitar dessas urls apenas a seção (materia ou noticia) e a id (125 e 523, no caso). O resto (peixes_africanos e oceano_secou) está lá apenas para ajudar nas buscas e não será de serventia para o processo. Siga o modelo:

<?php

// Capturamos a url digitada
$url_site = $_SERVER['REQUEST_URI'];

// Convertemos em array quebrando a string nos pontos certos
$urln = explode("?", $_SERVER['REQUEST_URI']);
$urlt = explode("/", $urln[0]);

// Para manter a compatibilidade com as urls antigas, vamos
// verificar existência do arquivo solicitado propriamente dito
if(is_file($urlt[1])){
  include($urlt[1]);
  exit();
}

// Ja vimos que nao e um arquivo existente, entao prosseguimos
// tratando a url digitada em forma de array
$url=strip_tags($_SERVER['REQUEST_URI']);
$url_array = explode("/", $url);

// Excluimos o primeiro elemento, que sempre será vazio
array_shift($url_array);

// Se a array ficou vazia, mandamos ver no index.php
if(empty($url_array) or $url_array[0] == ""){
  include("index.php");
  exit();
}

// Se restou algo nela, vamos carregar o arquivo correto.
// Adaptacoes possivelmente so precisarao ser feitas nesta
// parte do código
else {

  // Materia
  if ($url_array[0] == "materia") {
    // capturamos a id passada na url
    $id = $url_array[1];
    // carregamos o arquivo real
    include("materia.php");
  }
    
  // Noticia
  elseif ($url_array[0] == "noticia") {
    // capturamos a id passada na url
    $id = $url_array[1];
    // carregamos o arquivo real
    include("noticia.php");
  }

  // Se nao for nenhuma das opcoes acima, carregamos a index mesmo
  else {
    include("index.php");
  }

  exit();
}

?>

Tá bom, o código está comentado mas merece alguma explicação. Apenas para ressaltar, se alguém estiver voando na leitura, isso é o que vai em "controle.php".

No início do código nós verificamos se existia o arquivo procurado na url, e neste caso carregamos ele. Isso para manter a compatibilidade com as urls que você já possui indexadas nos buscadores.

Passada esta fase, quebramos a url pelas barras ("/") existente e criamos um array que se parece com o seguinte:

www.site.com/materia/125/peixes_africanos
$url_array[0] = "materia"
$url_array[1] = "125"
$url_array[2] = "peixes_africanos"

Entretanto, só nos interessaram os dois primeiros elementos. Com eles carregamos o arquivo apropriado com base na leitura da url, no exemplo, "materia.php" ou "noticia.php", ambos existentes em nosso site fictício. No que se refere ao argumento, ou seja, a "id" da matéria ou notícia que vamos apresentar, perceba que colocamos esse dado na variável "$id". Bastará fazer a leitura dela onde for necessário.

Agora vamos saber o que muda no arquivo real que chamamos a partir do controle, ou seja "materia.php", "noticia.php" ou qualquer outro:

1) Perceba que você pode utilizar "$_GET['id']" apenas para manter a compatibilidade, porque se for uma requisição pela nova url, nós vamos pegar esse dado da variável chamada "$id". Então você vai verificar se existe algo em "$_GET['id']" e se não houver, fará o mesmo com a variável "$id", pois o argumento estará em um dos dois.

2) A segunda e última mudança diz respeito ao formato dos links para arquivos ou exibição de imagens. Nossas novas urls utilizam algumas barras, e isso indica mudança de diretório. Logo, precisamos voltar sempre à rais com uma "/" antes dos links. Observe os exemplos:

De: <a href="index.php">
Para: <a href="/index.php">

De: <img src="imagens/seta.gif">
Para: <img src="/imagens/seta.gif">


O método em sí está pronto! A intenção deste artigo não é fornecer um script milagroso que possa ser copiado e colado em qualquer site, pois isso seria utopia. O que forneço aqui é o conhecimento necessário para que cada faça a implementação da melhor forma.

Para conseguir esta última parte da url, por exemplo, basta fazer um tratamento da string trocando espaços por "_" e substituindo também a acentuação e os caracteres especiais.

www.site.com/noticia/523/oceano_secou

Use a criatividade. Você pode também criar urls assim:

www.site.com/noticia/523/oceano_secou.html

www.site.com/noticia/523/oceano_secou/oceano_secou.html

Isso porque as ferramentas de busca atribuem um peso diferente para as palavras encontradas na url em diretórios ou arquivos, e essa parte da url não será útil para o script mesmo.

Você deve trocar todos os links do seu site pelo novo formato para que surta efeito, e se quiser manter algum diretório sem o controle de url basta desativar o mod_rewrite criando nele um arquivo ".htaccess" com o seguinte conteúdo:

RewriteEngine off

Em caso de dúvidas ou dicas de melhorias sintam-se livres para postar neste tópico, o qual será aperfeiçoado ao longo do tempo com o surgimento de vantagens a serem acrescentadas no texto.

Flw!

#2 klango

klango

    Aqui é das antigas

  • Usuários
  • 1013 posts
  • Sexo:Não informado
  • Localidade:Anápolis-GO em breve na glória com meu Deus.
  • Interesses:Cristo Jesus - Familia - Música - Internet e multimidia - Carros antigos.

Posted 10/02/2006, 07:48

SuperEly geralmente em meus site não trabalho com "id", veja como faço:

Crio uma página index.php com uma tabela com 100% e dentro dela outra com 780px e três linhas.
Na primeira coloco um include para o top.
Na segunda coloco este código:
<?php 
	$x = eregi("http|ftp|https|www|wget", $_GET["area"]);

if ($x)
	$pagina="paginadefault.php";
else 
        $pagina=$_GET["area"].".php";


if($_GET["area"] == "")
$pagina = "inicio.php";
      
include($pagina); 
?>

Que vai fazer a Query
e no fim um include para a base do site.

Minhas URLs ficam assim:
?area=minha_pasta/meu_arquivo

Como será a adapdação para este formato?


t+
VIVA COM SAÚDE - NUTRI CENTER SUPLEMENTOS

.:: Nutri Center Suplementos Alimentares ::.
Loja de Suplementos Alimentares pelo Menor Preço do País. Compre já Suplementos Alimentares: Whey Protein, Albumina, BCAA, Maltodextrina, Creatina, Aminoácidos, Vitaminas, Diets, Ligth, celíacos, Perca peso rapido, Nutri Center Suplementos, sua loja de Suplementos Alimentares em Anápolis - GO e na Internet. 62-3702-7789

#3 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 10/02/2006, 08:57

Olá klango!

O que você faz é um tratamento da url nesta segunda linha da tabela. Para isso você recebe em forma de argumento tanto a área quanto a página a ser acessada.

Para adaptar ao novo modelo você vai continuar fazendo o tratamento da url para saber que arquivo carregar, mas fará isso no "controle.php". Você poderia usar urls mais ou menos assim:

De: http://www.e-teologia.com.br/?area=mapas_biblicos

Para: http://www.e-teologia.com.br/mapas_biblicos


De: http://www.e-teologia.com.br/?area=estudos_biblicos/estudos

Para: http://www.e-teologia.com.br/estudos_biblicos/estudos


E o código exemplo fornecido no primeiro post será mais simples no seu caso. Veja como ficaria a parte final dele:

// Se restou algo nela, vamos carregar o arquivo correto.
// Adaptacoes possivelmente so precisarao ser feitas nesta
// parte do código
else {

  if ($url_array[1] != "") {
    include($url_array[0] . "/" . $url_array[1] . ".php");
  }
  elseif ($url_array[0] != "") {
    include($url_array[0] . ".php");
  }
  else {
    include("inicio.php");
  }

  exit();

}

Assim funcionaria legal. (y)

#4 klango

klango

    Aqui é das antigas

  • Usuários
  • 1013 posts
  • Sexo:Não informado
  • Localidade:Anápolis-GO em breve na glória com meu Deus.
  • Interesses:Cristo Jesus - Familia - Música - Internet e multimidia - Carros antigos.

Posted 10/02/2006, 09:53

SuperEly olha o que fiz, peguei o código que postou mudei a última parte de acordo com o novo código que postou, salvei como controle.php e inclui na segunda linha no lugar de meu código anterior.

troquei o link de:
?area=teologia_sistematica
Para:
/teologia_sistematica

mas não deu certo.
VIVA COM SAÚDE - NUTRI CENTER SUPLEMENTOS

.:: Nutri Center Suplementos Alimentares ::.
Loja de Suplementos Alimentares pelo Menor Preço do País. Compre já Suplementos Alimentares: Whey Protein, Albumina, BCAA, Maltodextrina, Creatina, Aminoácidos, Vitaminas, Diets, Ligth, celíacos, Perca peso rapido, Nutri Center Suplementos, sua loja de Suplementos Alimentares em Anápolis - GO e na Internet. 62-3702-7789

#5 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 10/02/2006, 10:35

Ah, sim. Esqueci desse detalhe. Mas como seu site não é tão complexo como o previsto quando escrevi o artigo, vou lhe passar o procedimento completo para ele:

1) Usando o novo sistema você não vai precisar mais da sua "index.php", porque essa função será da "controle.php". Mas deixe o index lá.

2) Como você carrega primeiro o topo da página, depois o conteúdo (aqui o importante) e depois o rodapé, você fará isso em "controle.php" mesmo. Para isso você teria o código completo mais ou menos assim:

<?php

// Capturamos a url e dividimos
$url=strip_tags($_SERVER['REQUEST_URI']);
$url_array = explode("/", $url);

// Excluimos o primeiro elemento, que sempre será vazio
array_shift($url_array);

// Coloque aqui o seu include para o topo:
include("topo.php");

// Tratamos a url
if ($url_array[1] != "") {
  include($url_array[0] . "/" . $url_array[1] . ".php");
}
elseif ($url_array[0] != "") {
  include($url_array[0] . ".php");
}
else {
  include("inicio.php");
}

// Coloque aqui o seu include para o rodape:
include("rodape.php");

exit();

?>

3) Para desviar o tráfego para "controle.php" você precisa editar seu arquivo ".htaccess" que se encontra na raiz do seu site (onde estão suas páginas). Se não existir este arquivo você pode criar. No início dele adicione as seguintes linhas:

RewriteEngine on
RewriteRule !\.(gif|jpg|png|css)$ controle.php
Faça o teste. E se precisar voltar ao estado anterior basta excluir as linhas, o tráfego deixará de ser desviado.

4) Fazendo isso deve funcionar beleza. Caso as imagens deixem de aparecer, é porque você precisará adicionar uma barra no início dos links, assim:

De: <img src="imagens/seta.gif">
Para: <img src="/imagens/seta.gif">


Qualquer coisa pode postar novamente! :)

#6 klango

klango

    Aqui é das antigas

  • Usuários
  • 1013 posts
  • Sexo:Não informado
  • Localidade:Anápolis-GO em breve na glória com meu Deus.
  • Interesses:Cristo Jesus - Familia - Música - Internet e multimidia - Carros antigos.

Posted 10/02/2006, 12:24

Eu fiz o seguite coloquei o cógigo na página index e mudei no .htaccess de controle para index e dá o seguinte se digito www.e-teologia.com.br/teste/ ele dá isso:
Bad Request
Your browser sent a request that this server could not understand.

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

Se digito www.e-teologia.com.br/teste/index.php dá este erro:

Warning: main(teste/index.php.php): failed to open stream: No such file or directory in /home/eteolo00/public_html/teste/index.php on line 35

Warning: main(teste/index.php.php): failed to open stream: No such file or directory in /home/eteolo00/public_html/teste/index.php on line 35

Warning: main(): Failed opening 'teste/index.php.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/eteolo00/public_html/teste/index.php on line 35

A pasta teste é a pasta que estou usando para fazer os teste coloquei todos os aquios lá.


t+
VIVA COM SAÚDE - NUTRI CENTER SUPLEMENTOS

.:: Nutri Center Suplementos Alimentares ::.
Loja de Suplementos Alimentares pelo Menor Preço do País. Compre já Suplementos Alimentares: Whey Protein, Albumina, BCAA, Maltodextrina, Creatina, Aminoácidos, Vitaminas, Diets, Ligth, celíacos, Perca peso rapido, Nutri Center Suplementos, sua loja de Suplementos Alimentares em Anápolis - GO e na Internet. 62-3702-7789

#7 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 10/02/2006, 12:39

No diretorio "teste" o redirecionamento do .htaccess está funcionando e desviando para "index.php". Se eu digito:

http://www.e-teologia.com.br/teste/teologia_sistematica

Um dos erros do código é o seguinte:

Warning: main(teste/teologia_sistematica.php): failed to open stream: No such file or directory in /home/eteolo00/public_html/teste/index.php on line 35

Perceba que com aquela url ele tentou carregar o arquivo correto, qual seja "teste/teologia_sistematica.php", mas não conseguiu. Este arquivo está lá na pasta teste? Porque parece que ele não está sendo encontrado. Já o arquivo de rodape aparentemente veio beleza, e só não carregou as imagens porque não estão lá ou tem que fazer aquele esquema:

De: <img src="imagens/seta.gif">
Para: <img src="/imagens/seta.gif">

#8 klango

klango

    Aqui é das antigas

  • Usuários
  • 1013 posts
  • Sexo:Não informado
  • Localidade:Anápolis-GO em breve na glória com meu Deus.
  • Interesses:Cristo Jesus - Familia - Música - Internet e multimidia - Carros antigos.

Posted 10/02/2006, 13:45

A questão é essa eles estão lá, e quando digito só a pasta teste ele não acha nada e deveria achar o index e quando digito a url completa dá este erro.
VIVA COM SAÚDE - NUTRI CENTER SUPLEMENTOS

.:: Nutri Center Suplementos Alimentares ::.
Loja de Suplementos Alimentares pelo Menor Preço do País. Compre já Suplementos Alimentares: Whey Protein, Albumina, BCAA, Maltodextrina, Creatina, Aminoácidos, Vitaminas, Diets, Ligth, celíacos, Perca peso rapido, Nutri Center Suplementos, sua loja de Suplementos Alimentares em Anápolis - GO e na Internet. 62-3702-7789

#9 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 10/02/2006, 14:05

Humm... Observando o código da sua página, a normal mesmo, detectei um outro problema. Ela está com três cabeçalhos, incluindo metas tag e tudo mais. Acho que a parte do topo, a do centro e a do rodapé estão todas com cabeçalhos. Você pode tirar do restante e deixar apenas no topo, ou isso vai confundir os buscadores.

O outro problema se deve ao fato de você ter colocando tudo dentro do diretório "teste". Pode deixar lá por enquanto mesmo, mas altere a seguinte parte do código:

De:
// Excluimos o primeiro elemento, que sempre será vazio
array_shift($url_array);
Para:
// Excluimos os primeiros elementos
array_shift($url_array);
array_shift($url_array);

Assim tiramos o "teste" que está interferindo na localização dos arquivos. Fazendo isso deve funcionar beleza. Agora sim! :D

#10 klango

klango

    Aqui é das antigas

  • Usuários
  • 1013 posts
  • Sexo:Não informado
  • Localidade:Anápolis-GO em breve na glória com meu Deus.
  • Interesses:Cristo Jesus - Familia - Música - Internet e multimidia - Carros antigos.

Posted 10/02/2006, 15:01

Estou abrindo uma escola de informática online com os melhores professores do brasil é só acessar forum.wmonline.com.br, mensalidades há 30,00.


Valeu SuperEly funcionou direitinho.




t+
VIVA COM SAÚDE - NUTRI CENTER SUPLEMENTOS

.:: Nutri Center Suplementos Alimentares ::.
Loja de Suplementos Alimentares pelo Menor Preço do País. Compre já Suplementos Alimentares: Whey Protein, Albumina, BCAA, Maltodextrina, Creatina, Aminoácidos, Vitaminas, Diets, Ligth, celíacos, Perca peso rapido, Nutri Center Suplementos, sua loja de Suplementos Alimentares em Anápolis - GO e na Internet. 62-3702-7789

#11 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 10/02/2006, 18:07

Valeu SuperEly funcionou direitinho.

Aee! :D

Esse tipo de implantação só funciona depois de alguns testes mesmo. Eu perdi foi tempo para conseguir mudar as urls da Central Jurídica, mas lá foi mais complicado, e eu ainda não sabia fazer, hehe.

Agora só algumas informações adicionais:

1) Quando você tenta acessar a url:
http://www.e-teologia.com.br/teste
Não funciona porque o ".htaccess" só está ativado dentro dessa pasta. Se quando estiver tudo pronto você colocar na raiz do site deve dar certo. Do modo como está funciona assim:
http://www.e-teologia.com.br/teste/

2) Na parte do código onde tratamos a url, perceba que nós colocamos ela em forma de array, e veja como fica:

http://www.e-teologia.com.br/teste/teologia_sistematica
$url_array[0] = "teologia_sistematica"

http://www.e-teologia.com.br/teste/estudos_biblicos/estudos
$url_array[0] = "estudos_biblicos"
$url_array[1] = "estudos"

Então nós apenas conferimos o que existe no array e carregamos a página apropriada. Fazemos isso nessa parte do código:

// Se o $url_array[1] for diferente de nada
if ($url_array[1] != "") {
    // Usamos tanto o $url_array[0] quanto o $url_array[1]
    include($url_array[0] . "/" . $url_array[1] . ".php");
}

// Se ao contrário disso, apenas o $url_array[0] for diferente de nada
elseif ($url_array[0] != "") {
    // Usamos o $url_array[0] somente
    include($url_array[0] . ".php");
}

// Se não temos nada no array
else {
  // Carregamos a pagina inicial
  include("inicio.php");
}
Ou seja, existe uma mobilidade muito grande para tratar a url digitada. Fora isso é só carregar o topo antes de tudo e o rodapé logo após.

Flw! Boa programação! (y)

#12 Programador

Programador

    Se correr o bicho pega...

  • Usuários
  • 233 posts
  • Sexo:Masculino
  • Localidade:São Paulo - BR
  • Interesses:Não sou interesseiro

Posted 10/02/2006, 20:55

Alguém já reparou que o charges.com.br está usando o nome da charge no endereço?

Agora eles não usam:
charges.uol.com.br/arquivo.php?id=200

Eles usam
charges.uol.com.br/2006/02/06/esporte-dia-desses-numa-casa-no-rio/

E todas estão assim:
Vejam no arquivo
http://charges.uol.com.br/arquivo.php



Com certeza dá resultado
Programador

ASP ...............llllllllllllllllllllllllllllllllll
ASP.net...........llllllllllllllllllllllllllllllllll
SQL server..... llllllllllllllllllllllllllllllllll
MySQL............llllllllllllllllllllllllllllllllll

#13 SuperEly

SuperEly

    O ser supremo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 10/02/2006, 21:19

Alguém já reparou que o charges.com.br está usando o nome da charge no endereço?

Sim, vários sites estão fazendo isso. A Central Jurídica, por exemplo: :P

http://www.centraljuridica.com/doutrina/11/direito_civil/principios_da_razoabilidade_proporcionalidade.html

E o resultado é muito bom! :D

#14 klango

klango

    Aqui é das antigas

  • Usuários
  • 1013 posts
  • Sexo:Não informado
  • Localidade:Anápolis-GO em breve na glória com meu Deus.
  • Interesses:Cristo Jesus - Familia - Música - Internet e multimidia - Carros antigos.

Posted 11/02/2006, 20:04

Eu consegui azer funcionar, o problema agora é com o layout na hora de incluir que estou apanhando, mas vou mexendo até conseguir migrar para este modelo.
VIVA COM SAÚDE - NUTRI CENTER SUPLEMENTOS

.:: Nutri Center Suplementos Alimentares ::.
Loja de Suplementos Alimentares pelo Menor Preço do País. Compre já Suplementos Alimentares: Whey Protein, Albumina, BCAA, Maltodextrina, Creatina, Aminoácidos, Vitaminas, Diets, Ligth, celíacos, Perca peso rapido, Nutri Center Suplementos, sua loja de Suplementos Alimentares em Anápolis - GO e na Internet. 62-3702-7789

#15 ACGlobal

ACGlobal

    | ▪ ▪ Pirataria é crime! ▪ ▪ |

  • Usuários
  • 395 posts
  • Sexo:Não informado

Posted 11/02/2006, 20:50

Estou adaptando o sistema também.

Parabéns SuperEly! Esse tópico merece destaque ;) e já está pendurado!

Falou! :D

Edição feita por: ACGlobal, 11/02/2006, 20:51.

Últimas Notícias:
País perde R$ 30 bi por ano com pirataria
Cresce o combate à pirataria

Denuncie a pirataria:
Ligue para a linha direta da BSA: 0800 11 0039
Deseja fazer a denúncia on line, clique aqui.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq