Posts tagged ‘web’

23 de fevereiro de 2011

Script para adicionar um Virtual Host no Apache em Ubuntu

por adlerparnas

Salve pessoal!

Mais uma vez off por um bom tempo. Graças a Deus estou cheio de projetos, a pós em Engenharia de Software Centrada em Metodologias Ágeis está me ocupando bastante mas infelizmente está sobrando pouco tempo pra escrever.

Hoje vim postar um script básico para automatizar a criação de virtual host no apache pra quem desenvolve em linux (no meu caso Ubuntu). Reconheço que o script é bem medíocre, mas pra correria do dia-a-dia é uma mão na roda.

Basicamente o que o script faz é :

  1. Requisitar ao usuário que informe o nome do host;
  2. Requisitar ao usuário o caminho do diretório raiz para esse host;
  3. Criar o arquivo de configuração na pasta /etc/apache2/sites-available contendo a configuração necessária;
  4. Ativar esse host acrescentando um link na pasta /etc/apache2/sites-enabled para seu arquivo de configuração;
  5. Acrescentar o nome do host no arquivo /ect/hosts;
  6. Finalmente Reiniciar o apache;
###########################################################
# Criado por Adler Parnas <adler.parnas@doisdeum.com.br>  #
#                                                         #
# 2011-02-23                                              #
###########################################################
#                                                         #
# Script para criar um virtual host no apache e adicionar #
# o nome do host no arquivo hosts                         #
#                                                         #
###########################################################
#!/bin/bash

echo "Informe o nome do server (Ex.: adler.local) :"
read server

echo "Informe o caminho do site (Ex.: /var/www/adler) :"
read path

echo "Criando configuração de VHost para o server"

echo "<VirtualHost *:80>
	ServerAdmin webmaster@localhost
	ServerName $server
	ServerAlias www.$server

	DocumentRoot \"$path\"

	<Directory \"$path\">
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		Allow from all
	</Directory>
     </VirtualHost>" > /etc/apache2/sites-available/$server

echo "Ativando VHOST $server"
ln -s /etc/apache2/sites-available/$server /etc/apache2/sites-enabled/$server

echo "Atualizando arquivo hosts"
echo "127.0.1.1		$server	www.$server" >> /etc/hosts

echo "Reiniciando apache";
/etc/init.d/apache2 restart

echo "VHOST criado";

É isso ai pessoal! Espero que esse script seja útil para vocês assim como é pra mim.
Correções e Sugestões são bem-vindas, então fiquem a vontade para comentar.
Abraços e até a próxima

Anúncios
27 de agosto de 2010

Problema com session em frame / iframe no Internet Explorer

por adlerparnas

Fala pessoal!

Hoje estou aqui para mostrar uma solução para os problemas com sessões nos  frames/iframes no Internet Explorer versões 6, 7 e 8. Não sou muito adepto aos  elementos  frame e iframe, mas sei que muitas pessoas usam e que são uma ótimo recurso.

Desenvolvendo um projeto no meu trabalho, nossa página seria aberta em  um iframe na  aplicação do cliente. Eis que me aparece o problema, a sessão do usuário em nosso sistema  não era gravada.

Pesquisando pela WEB, descobri no site ASPBRASIL que o problema acontecia por causa de uma diretiva de segurança do Internet Explorer que restringe a gravação de cookies na máquina do usuário. Essa diretiva denominada P3P é descrita pelo W3C.

Seguindo as instruções do site ASPBRASIL, basta alterar a propriedade P3P no cabeçalho do HTTP para que a página consiga gravar os cookies na máquina do cliente. Aqui senha um exemplo em ASP e em PHP de como alterar essa diretiva no cabeçalho HTTP.

<%
Response.AddHeader("P3P", "CP=\"IDC DSP COR CURa ADM ADMa DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT PHY ONL COM STA\"");
%>
<?php
header('P3P: CP="IDC DSP COR CURa ADM ADMa DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT PHY ONL COM STA"');
?>

ATENÇÃO: a diretiva deve ser alterada na página que irá abrir dentro do frame.

Ainda não estudei todas essas diretivas, mais sei que vai funcionar! 😀

É isso ai pessoal! Espero que essa dica seja útil a todos vocês e caso tenha dito algo errado,  favor me corrijam!

Fontes: