quarta-feira, 5 de março de 2014

Symfony2 : Como tirar o 'web/app_dev.php' da url

Dica simples e fácil. Primeiro, na raiz de sua aplicação em symfony2, crie um arquivo 'index.php' e adicione o conteudo


<?php

define('RUNNING_FROM_ROOT', true);
include 'web/app_dev.php';


Agora, na mesma raiz, crie um arquivo '.htaccess' e adicione as linhas


RewriteEngine On
RewriteBase /caminho/para/seu/projeto
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]


Onde o '/caminho/para/seu/projeto' é a parte da url 'http://meuhost.com.br/caminho/para/seu/projeto'. Se você não usa uma sub-pasta em seu host, basta colocar a barra vertical sozinha '/'

domingo, 2 de março de 2014

HTML : autenticação básica

Esta é uma dica de como fazer uma autenticação básica de uma página html apenas usando o arquivo '.htaccess' e um arquivo de senhas.

Aqui supomos que tenha o comando 'htpasswd' instalado em  seu sistema. Caso não tenha, instale ele.  Agora execute :


$ htpasswd -bc minhassenhas.passwd meuusuario minhasenha


onde temos aqui que 'minhassenhas.passwd' é o arquivo onde você irá salvar os usuários e as senhas. 'meuusuario' é o nome do usuário para acessar a página e 'minhasenha' é a senha desse usuário.
Não tente criar a senha sem esse comando, pois ele criptografa as senhas para serem armazenadas  no arquivo. Agora, mude as permissões do arquivo para que seja só de leitura para outros e para o grupo


$ chmod a+r minhassenhas.passwd


Agora, crie um arquivo '.htaccess' na pasta com a página e adicione as linhas:


authtype basic
authname meuauthname
authuserfile /caminho/completo/para/arquivo/de/senhas/minhassenhas.passwd
require valid-user



onde aqui só é preciso colocar o 'meuauthname' e o caminho completo do arquivo de senhas.
O 'authname' é apenas um nome de identificação da autenticação e pode ser qualquer um que você quiser.

E pronto, crie uma página html na pasta com o '.htaccess' e você verá uma caixa de login suspensa, e fornecer o usuário e senhas registrados no arquivo de senhas.


Referências: http://www.rahul.net/howto/basicauth.html