Ir para conteúdo

POWERED BY:

Arquivado

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

Nilson15

[Resolvido] Problemas com links de paginas abertas usando regras

Recommended Posts

Olá pessoal, eu tava trabalhando com htaccess e notei que em algumas pagina em que era aberta usando regras do .HTACCESS não carregava o css e nem as imagens, após uns testes notei novamente que todas as paginas que não funcionavam era porque a regra tinha um palavra e mais uma barra e mais palavras, um exemplo /Membros/Pagina assim o link imitava a existência da pasta Membros, e sendo assim tive que usar o "../" nos links uma vezes, como se fosse real mesmo a pasta e a pagina estivesse la dentro. Minha duvida é como mudar isso, para que o /Membros/ não seja reconhecida como pasta e não seja necessário colocar os "../" nos links. Eu tentei usar o endereço completo do arquivo css e os outros arquivos, por exemplo "http://site.com/css/site.css", e até deu certo mas como eu estou na fase de criação eu mudo muito os arquivos do meu servidor EasyPHP para outros servidores, e toda vez ter que alterar esses links da muito trabalho pois o site é imenso. Obrigado! B)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Nilson15,

você está usando o htaccess sem antes conhecer o básico? Nunca faça isso, sempre tenha domínio sobre seu projeto.

Vamos entender um pouco:

 

1º) Se você diz para o servidor redirecionar tudo para um caminho é isso que ele vai fazer;

 

Problema:

 

Qualquer requisição que o cliente fizer o servidor pode e vai coincidir com suas configurações, sendo assim não importa se você quer que apenas uma url com o nome "membros" seja redirecionada para um determinado local;

 

Solução:

 

Abstrair as requisições.

/membros/ é uma requisição abstrata, logo isto abaixo é concreto.

 

Vejamos o que é concreto:

 

  1. pastas
  2. Arquivos
  3. Código antecedente

 

Entendendo algumas FLAGS:

 

F = File: Objeto existente no servidor com caminho definido.

D = Directory: Uma pasta no servidor com caminho definido.

 

Então o que devemos fazer é dizer para o requisitante que não queremos que objetos concretos sejam incluídos nas regras.

 


# Criando uma condição
RewriteCond

# Criando o objeto da condição.
%{REQUEST_FILENAME}

# Informando ao objeto da condição o que fazer se encontrar FILE ou DIRECTORY 

#( !-f , !-d  )
!-f

 

Agora aplicamos usando assim:

 

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

# ...

 

Agora entendi, é que eu nunca usei o .HTACCESS antes e por isso não não tenho experiencia no assunto, mas mesmo assim eu decidi praticar e utiliza-lo em meu projeto. Muito obrigado, agora eu posso continuar a fazer meu projeto! :joia:

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.