Urls Amigaveis
#1
Posted 27/02/2008, 14:29
Vou explicar como estou fazendo...
tenho essa url no meu site
http://www.meusite.c...r.php?codigo=38
e quero que a url fique assim
http://www.meusite.c.../novo/sombra/38
Entao peguei meu .htaccess e escrevi nele esse código
RewriteRule sombra/(.*)/(.*)$ sombra_ver.php?codigo=$1 [L]
Mais nao esta dando certo, a url fica a mesma coisa como estava antes (http://www.meusite.c...r.php?codigo=38)
Gostaria que me ajudasse a me dizer onde esta o erro.
Obrigado desde já!
Webmaster
Agência Gigante
Criciúma - SC
#2
Posted 27/02/2008, 15:54
você já verificou se o APACHE está permitindo rewrite?
Para saber verifique a configuração no arquivo httpd.conf deve possuir as seguintes linhas
LoadModule rewrite_module modules/mod_rewrite.so AddModule mod_rewrite.c
Se já estiver assim eu aconselharia verificar a quantidade de (.*), pois você está mandando apenas 1 sendo que a URL espera por dois. Fazendo com que a URL enviada não bata com a esperada.
Abraços.
#3
Posted 27/02/2008, 16:37
RewriteRule sombra/(.*)/$ sombra_ver.php?codigo=$1 [L]
O apache esta permitindo sim o rewrite.
Obs.: O meu site nao está no diretorio raiz, está nessa pasta /novo, será que o .htaccess tem que estar no /novo tbm? Pois o .htaccess se encontra no diretório raiz do site.
Precisa fazer alguma coisa no php, ou só no .htaccess mesmo ja funciona?
Webmaster
Agência Gigante
Criciúma - SC
#4
Posted 27/02/2008, 16:43
Não, ex.:Hmm tens razao kaduzick, entao ficaria assim?
RewriteRule sombra/(.*)/$ sombra_ver.php?codigo=$1 [L]
O apache esta permitindo sim o rewrite.
Obs.: O meu site nao está no diretorio raiz, está nessa pasta /novo, será que o .htaccess tem que estar no /novo tbm? Pois o .htaccess se encontra no diretório raiz do site.
Precisa fazer alguma coisa no php, ou só no .htaccess mesmo ja funciona?
Se tenho:
/ - raiz
/novo - pasta NOVO
e tiver um .htaccess na raiz, com modrewrite, e não tiver nenhum .htaccess na NOVO desativando o MODREWRITE para a pasta novo, então o da raiz servirá para todas as pastas.

"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."
Muito Obrigado à todos do fórum, e à toda equipe do fórum!
#5
Posted 27/02/2008, 16:51
Mais ainda sim naum esta funcionando
RewriteRule sombra/(.*)/$ sombra_ver.php?codigo=$1 [L]
Tem que fazer alguma coisa no no arquivo sombra_ver.php tbm?
Webmaster
Agência Gigante
Criciúma - SC
#6
Posted 27/02/2008, 17:24
Ex.:
$url=explode("/".$_SERVER['REQUEST_URI']);se colocar
http://www.meusite.com.br/novo/sombra/38seria:
echo $url[0]; // 38
Edição feita por: lwirkk, 27/02/2008, 17:28.

"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."
Muito Obrigado à todos do fórum, e à toda equipe do fórum!
#7
Posted 28/02/2008, 09:00
Tenho ese código aqui (sem url amigavel)...
<?
require_once ("../admin/conecta.php");
$sql="SELECT * FROM sombra ORDER BY codigo DESC";
$query=mysql_query($sql);
while($sql = mysql_fetch_array($query)){
$codigo = $sql["codigo"];
$titulo = $sql["titulo"];
$texto = $sql["texto"];
$previa = "$texto";
echo"<br /><br />
<strong>$titulo</strong><br /><br />";
echo substr_replace($previa, '...<a href=sombra_ver.php?codigo='.$codigo.' class=noticia> <br /><br />
<strong>Ver [+]</strong> </a><br /><br /><img src="../noticias/reta.jpg" /><br /><br />', 200); // MOSTRA "No wmonline nós conseguimos..."
}
?>Como eu faço para implementar isso que você disse no meu código?
Edição feita por: wawasurf, 28/02/2008, 09:01.
Webmaster
Agência Gigante
Criciúma - SC
#8
Posted 28/02/2008, 11:18
RewriteRule sombra/(.*)/(.*)$ sombra_ver.php?codigo=$2 [L]
O retrovisor usado é o segundo ... o primeiro pega "sombra" ...
E como você está usando diretório teria que colocar antes do sombra:
RewriteBase /novo/ RewriteRule sombra/(.*)/(.*)$ /novo/sombra_ver.php?codigo=$2 [L]
Teste e depois faça isso na página php:
var_dump($_GET);
Poste o resultado dessa super global ...

Yeah I do have some stories, and it's true I want all the glory ...
#9
Posted 28/02/2008, 11:29
Fiz o que você falou e me retornou isso
array(0) { }
Era o que você esperava?
Webmaster
Agência Gigante
Criciúma - SC
#11
Posted 29/02/2008, 08:09
RewriteEngine on
# -FrontPage-
IndexIgnore .htaccess */.??* *~ *#
*/HEADER* */README* */_vti*
<Limit GET
POST>
order deny,allow
deny from all
allow from all
</Limit>
<Limit PUT
DELETE>
order deny,allow
deny from all
</Limit>
AuthName
www.meusite.com.br
AuthUserFile
/home/meusite/public_html/_vti_pvt/serv
ice.pwd
AuthGroupFile
/home/meusite/public_html/_vti_pvt/serv
ice.grp
RewriteCond %{HTTP_HOST} ^.*$
RewriteRule ^/?$
http://meusite.com.br/novo
[R=301,L]
RewriteCond %{HTTP_HOST}
^.*$
RewriteRule
^cadastro_de_curriculum.php$
http://meusite.com.br/novo/ca
dastro_de_curriculum.php [R=301,L]
RewriteBase /novo/
RewriteRule sombra/(.*)/(.*)$
/novo/sombra_ver.php?codigo=$2 [L,QSA]
Edição feita por: wawasurf, 29/02/2008, 08:10.
Webmaster
Agência Gigante
Criciúma - SC
#12
Posted 03/03/2008, 11:46
Webmaster
Agência Gigante
Criciúma - SC
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)










