Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

02-10-2009 17:20

Meu problema é o seguinte.

no .htaccess tenho o seguinte codigo

Options +FollowSymLinks RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-f RewriteCond %{SCRIPT_FILENAME} !-d RewriteRule ^([^/]*)$ index.php?page=$1 RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^([^/]*)/([^/]*)/$ ?page=$1&cp_tags=$2 RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^([^/]*)/([^/]*)$ ?page=$1&ID=$2

O Problema é o seguinte, quando eu digito minha url com a regra que consta o ID funciona e a que consta o cp_tags não, algo estranho que percebi, foi que se eu tirar a ultima barra da linha que consta cp_tags, esta linha passa a funcionar e a debaixo da erro.

Tem como eu deixar as duas linhas funcionando.

o link ficaria assim respectivamente:
http://localhost/mundo_society/view_tag ... s=Festival
http://localhost/mundo_society/view_tags/Festival

e assim
http://localhost/mundo_society/view_topic&ID=4
http://localhost/mundo_society/view_topic/4
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

02-10-2009 17:41

Tem uma gambiarra que dá para fazer com htaccess para se basear no início da URL, e redirecionar para o documento desejado.

Eu fiz um teste aqui em localhost se baseando no seu problema, dá uma olhada no script

RewriteEngine on # veio de http://localhost:8080/view_tags/abc # manda $v1 e $v2 para teste.php RewriteRule ^(view_tag[a-z,0-9,A-Z,_,-]+)\/([a-z,0-9,A-Z,_,-]+)$ /teste.php?v1=$1&v2=$2 # veio de http://localhost:8080/view_topic/abc # manda $v1 e $v2 para teste2.php RewriteRule ^(view_topi[a-z,0-9,A-Z,_,-]+)\/([a-z,0-9,A-Z,_,-]+)$ /teste2.php?v1=$1&v2=$2

0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

08-10-2009 14:19

Não deu certo e aproveitando o post. nas noticias eu tenho um campo que contem a categoria dela.

tem como eu deixar as urls assim

www.meusite.com/categoria/titulo+da+noticia.html

abçs
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

08-10-2009 14:29

Esse ai eu testei aqui, simulando o seu, e funcionou.

Usa a regras dos 2 valores, um para categoria e um para título.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

23-04-2010 16:31

Desculpe a demora em responder, estava sem pc, e só agora consegui testar no código.

Mas não deu certo. Fiz uma gambiarra, que tenho certeza, que não é correta mais funcionou.

Nas pagina eu tinha as variáveis:

$id = $_GET['ID'];

$links = $_GET['cp_tags'];


Para resolver isto eu deixei todos as variáveis GET como ID. assim aproveitando a regra do .htaccess.

$id = $_GET['ID'];

$links = $_GET['ID'];

Como são páginas distintas funcionou.


ABçs
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

23-04-2010 18:30

Legal que deu certo. :wink:
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

02-03-2012 22:53

Web, para não ter que abrir outro post sobre o mesmo assunto, vou mandar um problema que esta acontecendo no UOLHost, é o seguinte, em um site, o conteudo todo abre dentro de body, da pagina index.

Eu faço assim:

nav.php = Pagina que contem todos os links, que tem no site, qualquer coisa diferente vai para a pagina de erro.
<? $page = (isset($_GET['page']) && $_GET['page'] != '') ? $_GET['page'] : 'default'; $allowedPages = array('default','empresa','compre', 'venda','venda_confirm','ofertas','dicas','trabalheconosco', 'contato','contatook','buscacompre','buscacompre2', 'dados_imovel','busca-imoveis','mostra_imoveis'); if (!in_array($page, $allowedPages)) { $page = 'notfound'; } ?>

index.php = O body na pagina index que recebe os links passados para a pagina nav.php

<body> <div id="rdr-site"> <div id="rdr-topo"> <?php require_once ("html/top_novo_php.html"); ?> </div> <!-- Inicio site --> <div id="rdr-conteudo"> <?php require_once $page. '.php'; ?> </div> <!-- Fim site --> </div>


e por ultimo

.htacess = que contem a expressão.

<body> <div id="rdr-site"> <div id="rdr-topo"> <?php require_once ("html/top_novo_php.html"); ?> </div> <!-- Inicio site --> <div id="rdr-conteudo"> <?php require_once $page. '.php'; ?> </div> <!-- Fim site --> </div>

O problema é o seguinte, qualquer link passada no url acessa apenas a pagina direta, sem interpretar as regras do htacess a não ser que eu coloque o & no final do link.

Segue um exemplo para ser mais especifico:

url sem a regra seria assim: http://www.radarintermediacoes.com.br/i ... dicas&id=8 desta forma funciona

com a regra deve ficar assim: http://www.radarintermediacoes.com.br/dicas/8 Este não funciona

Agora se eu deixar assim: http://www.radarintermediacoes.com.br/dicas&id=8 ou assim http://www.radarintermediacoes.com.br/dicas& com apenas o caracter & no final funciona.

Creio que deve estar faltando algum parametro ou tem algo errado na regra passada, mas este mesmo .htacess funciona normalmente em outros servidores, dando este problema apenas no UOLHost.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

03-03-2012 08:42

Você não postou o htaccess.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

03-03-2012 11:58

Segue o .htacess

allow from all errordocument 404 /notfound Options +FollowSymLinks RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-f RewriteCond %{SCRIPT_FILENAME} !-d RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 #RewriteCond %{SCRIPT_FILENAME} !-f #RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ index.php?page=$1&id=$2 #RewriteCond %{SCRIPT_FILENAME} !-f #RewriteRule ^([^/]*)/([^/]*)$ index.php?page=$1&id=$2

Vlw
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

03-03-2012 12:20

Pelo que entendi, sua regra deveria fica assim

RewriteRule ^([a-z,0-9,A-Z,_-]+)\/([a-z,0-9,A-Z,_-]+)$ /index.php?page=$1&id=$2
#http://www.radarintermediacoes.com.br/i ... dicas&id=8

Porque você passa 2 valores.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

03-03-2012 19:38

Web pelo que estive percebendo o problema está no arquivo que inclui as paginas dentro do index, o que não está acontecendo, não sei por qual motivo. ele abre o arquivo fora do index, como as conexões, chamadas css, etc.. estão dentro de index a pagina abre desconfigurada ou sem conexão.


Não sei se isso é um problema o .htacess ou do arquivo nav.php
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

03-03-2012 19:46

Se os arquivos incluidos estão em outro diretório, ocorre isso sim.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 166

URL Amigavel .htacess

03-03-2012 20:32

Deletei o arquivo htaccess do servidor e o mesmo ainda acessa a pagina sem colocar a extensão, pode um negocio desses?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17523
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

URL Amigavel .htacess

03-03-2012 20:35

Deve ser cache, em seu navegador ou no servidor.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado