Arquivos

Arquivo para a categoria ‘Tutoriais e Dicas’

[PHP]Forçar download de arquivo

Olá, trago hoje um código muito bom que força o browser a fazer o download do arquivo ao invés de executa-lo.

Para quem quiser copiar o codigo segue abaixo:

function downloadFile($file){
        $file_name = $file;
        $mime = 'application/force-download';
	//Aplica configurações de cabeçalho
	header('Pragma: public'); 	// requerido
	header('Expires: 0');		// sem cache
	header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
	header('Cache-Control: private',false);
	header('Content-Type: '.$mime);
	header('Content-Disposition: attachment; filename="'.basename($file_name).'"');
	header('Content-Transfer-Encoding: binary');
	header('Connection: close');
	readfile($file_name);		// força o downlaod
	exit();
}
CategoriasPHP

[Apache]Habilitar MultiViews(esconder a extensão do arquivo)

Olá, para habilitar o modo multi-views do apache edite o arquivo httpd.conf (apache2.conf no Ubuntu Server) e procure pela linha Options -Indexes FollowSymLinks Includes ExecCGI substitua por :

Options Indexes FollowSymLinks Includes ExecCGI +MultiViews

Onde +MultiViews é a opção que habilita a função de esconder a extensão do arquivo.

Agora você pode acessar seus arquivos .php sem a extensão por exemplo:

www.seusite.com.br/carrinho.php

com MultiViews ativado pode ser acessado assim

www.seusite.com.br/carrinho

CategoriasApache

[Apache]Bloquear listagem de arquivos no site

Olá, hoje ensinarei como desativar aquela listagem de arquivos quando você digita uma URL que cai em uma pasta do seu site(O famoso erro403).
Por segurança é interessante manter a listagem de arquivos do site desabilitada para evitar possíveis problemas com hackers.

Primeiramente, edite o arquivo httpd.conf do apache (para quem usa xampp: xampp/apache/conf/httpd.conf) e busque pela tag  onde caminho é a pasta em que o servidor usa para o site, geralmente chamada de htdocs,www,public_html.
Nessa tag haverá o comando options com uma serie de opções veja o exemplo abaixo:
Options Indexes FollowSymLinks Includes ExecCGI +MultiViews
A opção Indexes é o comandinho que usamos para bloquear a listagem dos arquivos, basta colocar um – antes dele para bloquear a listagem ficando assim:
Options -Indexes FollowSymLinks Includes ExecCGI +MultiViews
Salve o httpd.conf e reinicie o apache.
Agora quando entrar em alguma pasta do servidor pelo browser o mesmo apresentará o erro 403 que não deixa ser feita a listagem de arquivos.
Obrigado pela visita.
CategoriasApache

[PHP]Identificar qual navegar o usuário está utilizando

Um código pequeno mais muito interessante para o desenvolvedor que quer saber qual browser o visitante do seu site está usando.

//Função que pega as informações do usuário.
//Essa função pega os tipos de browser e qual SO o usuário está usando por isso logo abaixo faremos um if para verificar o navegador.
$navegador = $_SEVER['HTTP_USER_AGENT'];

//Agora a função srtsrt pega a primeira ocorrência da string do segundo parâmetro passado para ela
//Sendo assim faz as verificações e imprime qual navegador está sendo usado.
if(srtsrt($navegador,”MSIE”)){
echo “Seu navegador é o Internet Explorer”;
}
else if (srtsrt($navegador,”Mozilla”)){
echo “Seu navegador é o FireFox”;
}
else if (srtsrt($navegador,”Chrome”)){
echo “Seu navegador é o Chrome”;
}
else if (srtsrt($navegador,”Safari”)){
echo “Seu navegador é o Safari”;
}
else {
echo “Outro Navegador”;
}

CategoriasPHP

[Apache Tuning] Melhorar a Perfomance do Servidor

Hoje falarei sobre um assunto bastante interessante para os desenvolvedores web, a performance do servidor Apache.Muitas vezes você está desenvolvendo um freela e sua máquina não dá as respostas a altura mesmo estando local, a solução para o problema está no mod_prefork, ele quem controla os acessos simultâneos ao servidor. Bom chega de conversa e vamos ao que interessa.
Editando o arquivo httpd.conf ache as  linhas:
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 450
MaxClients 450
MaxRequestsPerChild 4000
Explicação:
StartServers 8 #Número de instância que o servidor apache vai usar para responder as requisições, cada instância ocupa cerca de 7MB da memória ou seja 8 irá ocupar aproximadamente 56 MB de memória

MinSpareServers 5 #Mínimo de instâncias reservas, útil para picos de requisição.

MaxSpareServers 20 #Máximo de instâncias reservas.

ServerLimit 450 #Igual a diretriz MaxClients

MaxClients 450 #Essa diretriz é o quanto de memória será usada no servidor.Existe um calculo a ser feito para deixar ideal.(RAM - tamanho_de_todos_outros_processos_do_servidor ) / ( tamanho_dos_processos_do_apache )
CategoriasApache
Seguir

Obtenha todo post novo entregue na sua caixa de entrada.