Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Juiner

[Resolvido] Ocultar parametros na URL

Recommended Posts

Galera,

 

Gostaria de saber se tem como configurar pelo framework ou até mesmo pelo .htacces para que oculte os parametros na URL (mostrando somente "http:dominio/modulo/controller/action").

Se tiver como, queria saber também se tem como separar por ambiente, ex: produção, homologação etc.

 

Valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para modificar a sua URL voce usa o ZEND_ROUTE....

 

voce pode conferir uns exemplos neste blog de um contribuidor do fórum:

 

http://matiasrezende.com.br/blog/zend-framework/criando-rotas/

 

 

___________________________________________________________________________________________

 

Agora para separar por ambiente voce tem que trabalhar com módulos ...

 

No mesmo blog você acha um tutorial bem legal sobre modulos

 

http://matiasrezende.com.br/blog/zend-framework/trabalhando-com-layouts-diferentes-por-modulo-no-zend-framework/

 

Abraços e qualquer dúvida poste

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora para separar por ambiente voce tem que trabalhar com módulos ...

Não necessariamente. No mesmo blog tem também um artigo explicando como trabalhar com configurações diferentes por ambiente.

 

http://matiasrezende.com.br/blog/zend-framework/trabalhando-com-ambientes-no-application-ini-do-zend-framework/

 

Sobre a questão de esconder parâmetros, seria legal se você explicasse como está a URL agora e como você quer que fique, pois acho que não vai ter como fazer (se eu entendi o que você quer).

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pelas respostas.. esclarecendo..

 

Quando eu me referi a ambientes é com relação a constante "APPLICATION_ENV" que é definida na "public/index.php" e utilizada no "application.ini" (ex: [development : production]). No caso se teria como ocultar os parametros em 'testing' e mostrar em 'development'

 

O que eu pretendo é esconder ou criptografar os parametros na URL.

 

Ex:

 

Se eu for cadastrar um produto, eu passo o ID do produto na URL:

 

http://localhost/produto/cadastro/save/id/10'>http://localhost/produto/cadastro/save/id/10

produto -> modulo

cadastro -> controller

save -> action

id -> nome Parametro

10 -> valor parametro

 

Eu gostaria de esconder o valor do parametro (via GET mesmo):

http://localhost/produto/cadastro/save/

 

... ou então passar esse valor criptografado:

http://localhost/produto/cadastro/save/y565fasdfj/r435gdfgs

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos por partes então:

 

Quando eu me referi a ambientes é com relação a constante "APPLICATION_ENV" que é definida na "public/index.php" e utilizada no "application.ini" (ex: [development : production])

A constante não é necessariamente definida no index.php. Pode ser definida junto com o virtal host ou ainda em arquivo .htaccess, como eu mostrei no artigo que foi sugerido antes (http://matiasrezende.com.br/blog/zend-framework/trabalhando-com-ambientes-no-application-ini-do-zend-framework/).

 

No caso se teria como ocultar os parametros em 'testing' e mostrar em 'development'

Não dá pra fazer.

 

Se eu for cadastrar um produto, eu passo o ID do produto na URL:

Você quer esconder este parâmetro, certo? Olha só, a questão é que você precisa passar isto de alguma forma. Ou por POST ou por GET. Se não quer que fique visível pela URL, tem que passar por POST. Não muda muito, porque ao invés de ficar visível na URL, fica visível no código fonte da página.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza.. então não tem como nem mesmo serializar as informações dos parametros da URL pelos recursos do framework?? Sem ser manipulando os parametros "na mão".

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza.. então não tem como nem mesmo serializar as informações dos parametros da URL pelos recursos do framework?? Sem ser manipulando os parametros "na mão".

Serializar as informações dos parâmetros da URL? O que seria isto?

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você diz, transformar isto:

 

http://localhost/produto/cadastro/save/id/10
produto -> modulo
cadastro -> controller
save -> action
id -> nome Parametro
10 -> valor parametro

Numa array e depois serializá-lo?

 

Bom, pelo que eu conheço do ZF não tem nada "pronto", mas ^pra você montar na mão nem é assim tão complicado, uma vez que o ZF oferece accessors para cada um desses valores.

 

O único senão são os valores dinâmicos, no caso o par id/10, os quais, acredito eu, seriam uma nova dimensão no array, afinal nesse caso existe apenas um par, mas o framework precisa retornar todos, logo, essa informação seria outro array, que ficaria dentro do primeiro que você mesmo criaria e informaria à serialize().

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno.. é mais ou menos isso q eu quero...

na verdade eu gostaria de poder serializar somente os valores de parametros,

ou até mesmo os nomes dos parametros também.

 

Ex: a URL a seguir:

 

http://localhost/produto/cadastro/save/id/10

 

Seria mostrada da seguinte forma

 

http://localhost/produto/cadastro/save/id/asdhfjas==

 

ou então:

 

http://localhost/produto/cadastro/save/asdhfjas==/asdhfjas==

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se é que é possível, nem compensa cara.

 

Quando você vier a dar manutenção nesse monstro você vai ficar maluco decodificando todos s parãmetros. Ou isso, ou "sujar" os comentários da sua aplicação.

 

Mas já que você estão TÃO preocupado com esse tipo de segurança, transmite esses valores por sessão criptografada. Como ñormalmente um formulário de adição/edição/exclusão de algo requer que o usuário esteja logado, implica em uma sessão ter sido iniciada.

 

Então armazene nela uma entrada com os dados e, quando necessário, resgate e use. Para criptografar, pode usar a biblioteca MCrypt, que tem algorítimos (muito bons inclusive) de criptografia de duas vias ("vai e volta").

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.