Ir para conteúdo

POWERED BY:

Arquivado

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

Amigo_zz

.htaccess proteger ficheiro

Recommended Posts

Ora biba pessoal,

 

Preciso da vossa ajuda. Estava aqui a pensar em proteger um ficheiro css ou um js via .htaccess.

 

Então coloquei numa 1ª versão:

Código:

<files ~ ".css$">

Order allow,deny

Deny from all

</files>

 

Protegia realmente os ficheiros de css mas também impedia o acesso do site aos ficheiros, então acrescentei:

Código:

<files ~ ".css$">

Order allow,deny

Deny from all

Allow from xxx.xxx.xxx.xxx

</files>

 

Mesmo problema e ainda substitui o ip pelo dominio com e sem www.

 

Mesmo resultado. Já coloquei o ficheiro na root e na pasta dos css.

 

Alguma dica?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo_zz,

 

O que você está tentando fazer é bloquear o acesso de clientes ao seus css e javascripts?

 

Isso não está certo...

Olhe, o css e o javascript não são processado no servidor... são enviados para o cliente.

 

Ou seja, quando você faz uma requisição para uma de suas páginas, por exemplo index.html, o que o browser faz é acessar os arquivos referenciados como css e javascript. Então se você bloqueá-los, seu browser não vai encontra-los.

 

Ou seja, quem trata do css e do javascript é o browser, e não o servidor... então você não deve bloqueá-los.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente você tem razão, era o que estava acontecendo mesmo. O browser tambem não "via" o css... Agora será que não dá para executar o css apenas se houver uma "senha" guardada numa constante ou numa session de forma a que não seja executado o css numa tentativa de acesso directo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Da pra fazer com sessão... mas depois que o usuário acessar seu site, ele vai conseguir acessar o CSS diretamente.

 

Por mais que você tente esconder seu js e css, existem milhares de componentes dos browser para visualizar os CSSs e os JSs dos sites, então não vale a pena...

 

Entenda que css e javascript vão ser interpretados no cliente, então não adianta tentar esconder...

 

 

 

mas se mesmo você assim você quiser, a lógica é mais ou menos assim:

 

//no seu html

<link rel="stylesheet" type="text/css" href="/restrito.php?arquivo=css.css" />

 

no arquivo restrito.php

<?php
session_start();
if(isset($_SESSION['valido']) && isset($_GET['arquivo'])){
    $arquivo = $_GET['arquivo'];
    $ext = substr($arquivo,-1-strpos($arquivo,'.'));
    if($ext == 'css'){
        header('Content-type: text/css');
    }elseif($ext == 'css'){
        header('Content-type: application/javascript');
    }else{
        exit();
    }
    echo file_get_contents($arquivo);
}

ai na suas páginas:

session_start();
$_SESSION['valido'] = 1;

 

mas não recomendo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra que esconder css?

 

Viva,

 

Sinceramente nenhuma razão em especial, mas depois de andar a ler alguns artigos por aí espalhados pensei que talvez fosse interessante como desafio. Mas sendo executado pelo cliente, ele fica visível. Pelos menos deu para a aprendizagem. Mas na tentativa e na pesquisa acabei descobrindo detalhes que poderão ser interessantes para aumento da segurança com ficheiros php.

 

Obrigado malta.

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.