Ir para conteúdo

POWERED BY:

Arquivado

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

Micilini Roll

You don't have permission to access...on this server

Recommended Posts

pessoal é o seguinte eu tenho este comando:

 

$linha = $consulta->fetchALL(PDO::FETCH_ASSOC);
foreach($linha as $v){	
        $fotoy = $v['foto'];   
	$tmp_dir = $v['tmpdir'];
}
chmod ("usuarios/$tmp_dir/perfil", 0744);


<img style="border-radius:10px;" src="<?  echo $fotoy ?>" alt="imagem" width="129" height="127" />

 

 

la no meu servidor todas as pastas que voces estao vendo no chmod troquei todas elas para permissao 0744,este projeto php que voces estao vendo esta fora da pasta usuarios(ou seja esta na mesma pasta aonde esta localizada a pasta usuarios),na verdade este caminho existe e esta tudo certo,so que a imagem nao apareçe dai eu tentei abrir direto do navegador e recebo a mensagem:

 

 

 

You don't have permission to access /meusite/usuarios/860f1b1d14879b7bf637/perfil/logo_principal.png on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

 

 

OBS: o campo do banco de dados aonde esta sendo representado pela variavel $fotoy esta:

 

 

 

usuarios/860f1b1d14879b7bf637/perfil/logo_principal.png

 

e o campo cuja representaçao é tmp_dir esta:

 

 

 

860f1b1d14879b7bf637

 

 

na verdade tudo existe o problema e na hora de acessar mesmo alguem poderia me ajudar?



Pessoal fiz uns rapidos testes aqui agora e alterei tudo para 0755(pois a pasta aonde esta este projeto e os usuarios esta com permissao 0755) ai no caso fiz isso so pra testar e tentar seguir o mesmo padrao e nao é que funcionou so que tem um porem se eu pegar a url da foto e colocar no navegador ela tambem ira abrir! so que no meu ver isso nao pode aconteçer entende?! so quem pode acessar é os arquivos que estao dentro do meu proprio servidor e nao de servidores externos..ate neste forum é a mesma coisa se eu pegar por exemplo a url do meu perfil e postar aqui:

 

 

 

 

 

todos terao acesso!,alguem pode me dar uma luz?!



e outra coisa que nao pode aconteçer nunca! se eu digitar isso aqui

 

 

 

 

vai apareçer na tela todas as imagens de perfil que estao dentro daquela pasta,e isso nao pode aconteçer de jeito maneiro,como evito isso tambem?



eu pensei em evitar isso colocando em cada pasta uma index.php que no caso iria mostrar uma mensagem de erro,mais mesmo assim eu acho que(nao sei se tem como) o usuario poderia ate desativar a index e quando entrar iria ver a lista de pastas/arquivos/imagens....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você entende o funcionamento de permissionamento de pastas no Linux?

 

Permissão 744 equivale a:

- rwx para o dono

- r-- para o grupo

- r-- para outros

 

Em diretórios/pastas a permissão de execução (x) se faz necessário para ter permissão de acesso, apenas leitura ® não dá acesso ao diretório.

Para diretórios de permissão 711 ou 755.

Compartilhar este post


Link para o post
Compartilhar em outros sites

evitar que o root da pasta mostre todas as imagens, basta um noindex no htaccess

Options -Indexes

para impedir acessos externos, vc precisa de um truque um pouco mais sofisticado do que apenas mexer em permissões. Vc precisa ver se o acesso vem do teu servidor, e só então liberar. Existem duzias de tutoriais sobre isso na internet.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok entendo entao no caso o meu arquivo htacess so tera 1 linha que no caso será

 

 

 

 

Options -Indexes

 

 

eu tentei pesquisar isso que voce me disse no google mais nao encontrei nada a respeito por causa da palavra chave,voce tem um tutorial ai que possa postar o link?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para não permitir acesso externo você precisa colocar suas imagens numa pasta que não tem acesso externo e usar um script para carregar as imagens desta pasta (seu sistema vai ficar mais lento).

 

Quanto a abrir diretamente um caminho, coloque um arquivo index em cada um dos diretórios, redirecionando para o index do portal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Prog, é possível identificar qual o servidor que está requisitando e bloquear via htaccess.

Dessa forma, não fica lento não.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei o objetivo dele, de fato via htaccess me parece mais eficiente, não conhecia esta "técnica". :)

 

Vou fazer alguns testes aqui para ver como isto funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim prog é este mesmo meu objetivo somente quem tem acesso é os arquivos do meu servidor!

 

 

olha eu fiz o seguinte para o meu site no arquivo .htacess eu coloquei option -indexes e deu certo aqui,so que tem mais um porem eu li os tutoriais que vc me mandou: fiz deste metodo mais nao adiantou de nada:

 

 

 

# BEGIN bloquear o acesso externo de arquivos
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?meusite/.*$ [NC]
RewriteRule .(gif|jpg|png|js|css)$ – [F]
</IfModule>
# END bloquear o acesso externo de arquivos

 

 

dai tentei procurar outra forma pelo google e achei esta:

 

Rewriteengine on.
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.meusite.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meusite.com/.*$ [NC]
RewriteRule .*\.(gif|GIF|jpg|png|JPG|mp3|MP3)$ - [F]
Options -Indexes

^no site aonde peguei esta ele nao estava passando www.meusite.com e sim passando ali uma especie de IP,o ip que estava antes era 127.0.0

 

 

e deu o seguinte erro quando tentei acessar pela url:

 

 

 

 

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@meusite.com.br and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

 

 

e ficou quase tudo perfeito agora os usuarios que tentarem digitar nao irao conseguir pois esta bloqueado,mas como sempre tem algo errado, o proprio projeto existente dentro do meu servidor nao conseguiu puxar a imagem!,algumas dica a mais?

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.