Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, estou com um serio problema. Desenvolvi todo o site em uma hospedagem comum, em linux, mas quando instalei na hospedagem do cliente, a UOL host linux, o SEGUNDO parâmetro da URL simplesmente nao funciona.
Exemplo:
Faço a paginação de resultados de uma pesquisa da seguinte forma, em php:
pagina 1
meudominio.com/resultados.php?p=1
pagina 2
meudominio.com/resultados.php?p=2
e assim vai, de acordo com numeros de registros..
url amigavel deveria ser:
meudominio.com/resultados/1
minha regra no .htacess:
RewriteRule ^resultados/([a-z0-9-]+)/?$ resultados.php?p=$1 [NC,L]
essa regra funciona perfeitamente em outras hospedagens e so na Uol que nao.
Falei com o atendimento deles, e resumidamente, disseram que nao podem fazer nada, pois nao dao suporte a programação. ¬¬
Detalhe: o primeiro parametro funciona normalmente, por exemplo: dominio.com/contato , mas se tiver um segundo, ja nao funciona mais.. a pagina simplesmente atualiza e se mantem na mesma.
só que a hospedagem é de uma cliente, não é minha, rs.
ela tem um plano anual.
expliquei sobre a situação e talvez cheguemos a conclusão de utilizar o parametro exposto mesmo (resultados.php?p=1)
mas ainda aguardo alguma solução! vamos ver se alguem tem algo a sugerir
Então vamos ver se assim funciona:
.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ resultados.php?p=$1
no index.php é só chamado o link...
index.php/1/resultados
Perceba que o ID vem primeiro.
Veja se dessa forma funciona lá... é muito simples, deve funcionar.
Isso ai acredito que vá complicar a minha vida, rs.
veja meu htaccess para entender o problema:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
ErrorDocument 400 /index.php
ErrorDocument 401 /index.php
ErrorDocument 403 /index.php
ErrorDocument 404 /index.php
ErrorDocument 500 /index.php
RewriteRule ^home/?$ index.php [NC,L]
RewriteRule ^licoes/?$ licoes.php [NC,L]
RewriteRule ^atendimento/?$ atendimento.php [NC,L]
RewriteRule ^cadastro/?$ cadastro.php [NC,L]
RewriteRule ^metodologia/?$ metodologia.php [NC,L]
RewriteRule ^mensagens/?$ mensagens.php [NC,L]
RewriteRule ^administradores/?$ administradores.php [NC,L]
RewriteRule ^alterar-dados/?$ alterar-dados.php [NC,L]
RewriteRule ^autenticacao/?$ autenticacao.php [NC,L]
RewriteRule ^cadastrar-administrador/?$ cadastrar-administrador.php [NC,L]
RewriteRule ^home-gerenciar/?$ home-gerenciar.php [NC,L]
RewriteRule ^metodologia-gerenciar/?$ metodologia-gerenciar.php [NC,L]
RewriteRule ^parceiros-gerenciar/?$ parceiros-gerenciar.php [NC,L]
RewriteRule ^usuarios/?$ usuarios.php [NC,L]
RewriteRule ^usuario/?$ usuario.php [NC,L]
RewriteRule ^mensagem/?$ mensagem.php [NC,L]
RewriteRule ^parceiros/?$ parceiros.php [NC,L]
RewriteRule ^solicitar-senha/?$ solicitar-senha.php [NC,L]
RewriteRule ^questionario/?$ questionario.php [NC,L]
RewriteRule ^licoes-gerenciar/?$ licoes-gerenciar.php [NC,L]
RewriteRule ^licoes-categorias/?$ licoes-categorias.php [NC,L]
RewriteRule ^licao-cadastrar/?$ licao-cadastrar.php [NC,L]
RewriteRule ^cadastre-se/?$ cadastre-se.php [NC,L]
RewriteRule ^categoria/?$ categoria.php [NC,L]
RewriteRule ^buscar-licoes/?$ buscar-licoes.php [NC,L]
RewriteRule ^teste-perfil/?$ teste-perfil.php [NC,L]
RewriteRule ^enviar-sugestao/?$ enviar-sugestao.php [NC,L]
RewriteRule ^sugestoes/?$ sugestoes.php [NC,L]
RewriteRule ^gerenciar-favoritos/?$ gerenciar-favoritos.php [NC,L]
RewriteRule ^resultados/?$ resultados.php [NC,L]
RewriteRule ^usuario/([a-z0-9-]+)/?$ usuario.php?id=$1 [NC,L]
RewriteRule ^usuarios/([a-z0-9-]+)/?$ usuarios.php?p=$1 [NC,L]
RewriteRule ^parceiros/([a-z0-9-]+)/?$ parceiros.php?p=$1 [NC,L]
RewriteRule ^parceiros-gerenciar/([a-z0-9-]+)/?$ parceiros-gerenciar.php?p=$1 [NC,L]
RewriteRule ^licoes-gerenciar/([a-z0-9-]+)/?$ licoes-gerenciar.php?p=$1 [NC,L]
RewriteRule ^licao-alterar/([a-z0-9-]+)/?$ licao-alterar.php?id=$1 [NC,L]
RewriteRule ^mensagens/([a-z0-9-]+)/?$ mensagens.php?p=$1 [NC,L]
RewriteRule ^sugestoes/([a-z0-9-]+)/?$ sugestoes.php?p=$1 [NC,L]
RewriteRule ^resultados/([a-z0-9-]+)/?$ resultados.php?p=$1 [NC,L]
RewriteRule ^resultado/([a-z0-9-]+)/?$ resultado.php?id=$1 [NC,L]
RewriteRule ^sugestao/([a-z0-9-]+)/?$ sugestao.php?id=$1 [NC,L]
RewriteRule ^mensagem/([a-z0-9-]+)/?$ mensagem.php?id=$1 [NC,L]
RewriteRule ^licao/([a-z0-9-]+)/?$ licao.php?url=$1 [NC,L]
RewriteRule ^gerenciar-favoritos/([a-z0-9-]+)/?$ gerenciar-favoritos.php?p=$1 [NC,L]
RewriteRule ^categoria/([a-z0-9-]+)/?$ categoria.php?categoria=$1 [NC,L]
RewriteRule ^licoes/([a-z0-9-]+)/?$ licoes.php?p=$1 [NC]
É meu amigo, aí complicou... você me mostra apenas uma parte do código... log o que se pensa é que você só tem aquela regra. Aí neste caso, você pode mudar o modo de escrita das urls... tem outros métodos, dê uma lida neste post: http://forum.imasters.com.br/topic/368939-sobre-url-amigavel/
O UOL Host possui aquilo de "abrir chamados", faça isso, reclamando com eles.
E não recomendo continuar no UOL, quando vencer mude. Não aguento aqueles atendentes com o QI de inseto.
Também não aguento mais o UOL, hoje faz 5 dias que abri um chamado de extrema urgência para um problema em que só eles resolvem, e é simples, e até agora nada além de não darem satisfação, não ligam pra seu telefone de cadastro não fazem nada ! UM LIXO.
Experimente tirar a âncora (^) de início e deixar apenas a última regra com somente a flag L (Last), enquanto as outras permancem apenas com o NC (Next Condition).
>
Experimente tirar a âncora (^) de início e deixar apenas a última regra com somente a flag L (Last), enquanto as outras permancem apenas com o NC (Next Condition).
NC não é de "Next Condition", mas sim de "No Case", ou case-insensitive (sem diferenciar maiúsculas de minúsculas).
-> http://httpd.apache.org/docs/2.4/rewrite/flags.html#flag_nc
@lightfox:
Talvez o problema esteja nessa página de resultados, tem algum código que faz redirecionamento nela?
todas as paginas que apresentam uma segunda barra, nao funcionam.
/resultados/1 (resultados.php?p=$1) paginação
/resultado/320 (resultado.php?id=$1) get id
/licoes/1 (licoes.php?p=$1) paginação
/licao/titulo-da-licao (licao.php?url=$1) get url
etc..
nenhuma funciona na uol.
testei em outras 2 hospedagens linux e foram normalmente.
@Bruno Augusto, vou testar a remoção do ^ e volto a postar!
e como eu ja falei, a hospedagem é de cliente, nao é minha. rs
-
Tentei o que falaram, mas nao adiantou ainda..
A pagina permanece na mesma.. como se ignorasse a segunda barra do link..
essa uol é uma m***da mesmo!
>
-
Tentei o que falaram, mas nao adiantou ainda..
A pagina permanece na mesma.. como se ignorasse a segunda barra do link..
essa uol é uma m***da mesmo!
Eu falei, e o pior é que ninguém resolve nada naquela merd@
NC não é de "Next Condition", mas sim de "No Case", ou case-insensitive (sem diferenciar maiúsculas de minúsculas.
:blush:
Falha minha! Confundi com o N (Next) em conjunto com C (Chain)
>
:blush:
Falha minha! Confundi com o N (Next) em conjunto com C (Chain)
Super normal... acontece. :thumbsup:
é, amigos. SEM CHANCE!
tentei de tudo cara. nada funciona e o suporte deles é pior que mendigo tentando ser advogado.
@lightfox , conseguir resolver o problema?
A solução aí é simples, se funciona em qualquer outro host, menos na uol, mude de host :thumbsup: