Jump to content
tiagocaus

URL amigável com várias páginas.

Recommended Posts

Olá,

Preciso mudar uma url dinâmica para amigável. Como nunca fiz, estou um puco perdido.

 

Qualquer orientação será muito bem vinda.

 

 

URL ATUAL

http://dominio/site/s000/pagina.php?pagina=pag_quemsomos.php

GOSTARIA

http://siteparaigreja/s000/quemsomos

Outra situação quando acessa as notícias

 

 

 

 

URL ATUAL

http://dominio/site/s000/pagina.php?pagina=pag_noticiasVer.php&id=1237

GOSTARIA

http://dominio/s000/noticiasver/1237

Share this post


Link to post
Share on other sites

 

 

Adriano, vou aprender a fazer isso na marra... kkkk.

 

Vou fazer parte por parte.

 

 

Nessa URL

http://dominio.com.br/site/s000/pagina.php?pagina=pag_quemsomos.php

Depois do dominio tem uma pasta chamada /site/. Que configuração preciso fazer no .htaccess para não precisar mostrar a URL?

 

Ficaria assim:

http://dominio.com.br/s000/pagina.php?pagina=pag_quemsomos.php
http://dominio.com.br/s001/pagina.php?pagina=pag_quemsomos.php
http://dominio.com.br/s002/pagina.php?pagina=pag_quemsomos.php

Share this post


Link to post
Share on other sites

Estou vendo o link, mas não consegui entender como esconder a pasta /site/ da URL. Ou seja não precisar estar na url.

 

To conseguindo.... hehehehe.

 

Quem tiver a mesma dúvida veja como fazer:

RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_URI} !^site/RewriteRule ^(.*)$ site/$1 [L]

Agora vou passar para segunda parte da URL...

 

 

Uma dúvida que surgiu agora...

 

Dentro da pasta site tem os sites que são modelos diferentes que carregam o mesmo conteúdo.

 

/site/

/s000/

/s001/

/s002/

.

.

.

 

No htaccess tem como fazer consulta mysql para ver qual pasta esta ativa? Assim que consigo eliminar mais um da url.

Share this post


Link to post
Share on other sites

No htaccess tem como fazer consulta mysql para ver qual pasta esta ativa? Assim que consigo eliminar mais um da url.

Isso você faz com php amigo, no seu caso especifico de "Reescrita de URL" é que o .htaccess ira fazer.

 

Se pasta não existir vai da um erro de 404, onde você pode tratar isso no htaccess

Share this post


Link to post
Share on other sites

Isso eu sei, mas não é essa a minha questão.

 

Estava até agora pesquisando e o ultimo parametro que parei foi o rewritemap, se eu entendi bem é possível pegar um valor tipo $modelo que esta dentro do arquivo config.php para dentro do htaccess?

 

 

Estou conseguindo fazer, com esse comando

RewriteRule ^(.*)/(.*)?$ site/$1/pagina.php?pagina=$2 [L]

a url fica assim:

 

 

Mas agora preciso fazer quando for para abrir o arquivo index.php

 

Estou fazendo assim:

RewriteRule ^inicio/(.*)?$ site/$1/index.php [L]RewriteRule ^(.*)/(.*)?$ site/$1/pagina.php?pagina=$2 [L]

Mas da Internal Server Error.

Share this post


Link to post
Share on other sites

Alguém pode dar uma sugestão o que esta errado nesse código:

RewriteRule ^inicio/(.*)?$ site/$1/index.php [L]
RewriteRule ^(.*)/(.*)?$ site/$1/pagina.php?pagina=$2 [L]

Share this post


Link to post
Share on other sites

tinha o mesmo problema, mais achei a solução do meu problema.
creio que ira te ajuda.

no arquivo .htaccess você coloca
 

<IfModule mod_rewrite.c>
  RewriteEngine On

  RewriteRule ^contato/?$ /contato.php [NC,L]

</IfModule>

Onde tem^contato/ você coloca a url que deseja e onde esta /contato.php coloca a url original

espero que tenha te ajudado.

 

fonte: http://blog.thiagobelem.net/aprendendo-urls-amigaveis

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.