Loading...
 

How To Configurare Ubuntu per UniversiBO

Per non "sporcare" la propria installazione ed avere una macchina virtuale di svluppo leggere How To Vagrant

Abstract

Questa pagina illustra i (numerosi) passaggi necessari per la configurazione di una copia di sviluppo di UniversiBO. Se usate Windows leggete How To Configurare Windows per UniversiBO

Installazione pacchetti di sistema

Per installare i pacchetti utilizzare apt-get o aptitude.
Per ragioni di spazio l'installazione è spezzata in più parti. Lanciare un unico comando con la lista di tutti i pacchetti è equivalente.
Installazione pacchetti con Aptitude
# Aptitude
sudo apt-get install aptitude && sudo aptitude update
# GVim
sudo aptitude install vim-gnome
# Apache 2
sudo aptitude install apache2-mpm-worker libapache2-mod-fcgid apache2-suexec-custom
# PHP ed estensioni
sudo aptitude install php5-cgi php5-sqlite php5-pgsql php5-mysql php5-intl php5-curl curl
sudo aptitude install php-apc php-pear
# PostgreSQL
sudo aptitude install postgresql phppgadmin
# MySQL
sudo aptitude install mysql-server phpmyadmin
# Git
sudo aptitude install git

Configurazione di Apache2 + PHP + suExec

(Sezione in costruzione)
La parte più complessa della configurazione riguarda Apache, PHP e suExec

Apache2

Abilita moduli
sudo a2enmod fcgid suexec actions rewrite


È necessario creare/modificare i seguenti file:

/etc/apache2/conf.d/php5-fcgid.conf
AddType application/x-httpd-php .php

AddHandler php-fcgi .php
Action php-fcgi /fcgi-bin/php5-fcgi

Alias /fcgi-bin/ /home/www-data/

<Location /fcgi-bin/>
        SetHandler fcgid-script
        Options +ExecCGI
</Location>


/home/www-data/php5-fcgi
#!/bin/sh
exec /usr/bin/php5-cgi


/etc/apache2/sites-available/universibo
<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        ServerName universibo.dev
        ServerAlias www.universibo.dev

        Alias /fcgi-bin/ /home/www-data/username/
        SuexecUserGroup username username
 
        DocumentRoot /home/username/git/UniversiBO/UniversiBO/web/
        <Directory /home/username/git/UniversiBO/UniversiBO/web/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All 
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>


/etc/apache2/suexec/www-data
/home/www-data


Sostituite username con il vostro nome utente.
Infine è necessario lanciare questi comandi

sudo a2ensite universibo
sudo mkdir /home/www-data/username
sudo chmod +x /home/www-data/php5-fcgi
sudo cp /home/www-data/php5-fcgi /home/www-data/username
sudo chmod +x /home/www-data/username/php5-fcgi
sudo chown -R www-data:www-data /home/www-data/
sudo chown -R username:username /home/www-data/username


Il file php.ini

Perché Symfony 2? ed UniversiBO funzionino correttamente occorre modificare alcune righe di php.ini

Aggiungere il fuso orario.
La riga

php.ini
;date.timezone


diventa

php.ini
date.timezone = Europe/Rome


La riga

php.ini
short_open_tags = On


diventa

php.ini
short_open_tags = Off


ATTENZIONE: i file di configurazione sono 2: /etc/php5/cli/php.ini e /etc/php5/cgi/php.ini
Questa modifica va riportata in entrambi i file

Configurazione di suhosin

Suhosin? è una patch per aumentare la sicurezza di PHP,. La configurazione di default non permette l'utilizzo di archivi phar (equivalente php del jar di Java). Occorre quindi impostare questo parametro.
/etc/php5/cli/conf.d/suhosin.ini
suhosin.executor.include.whitelist = phar

Configurazione del file hosts

Potete aprire il file /etc/hosts con un editor (es. nano)
Shell
sudo nano /etc/hosts

Dopodiché aggiungete la seguente riga
127.0.0.1    www.universibo.dev    universibo.dev

Selenium

Il server Selenium è un semplice jar che può essere scaricato all'indirizzo http://seleniumhq.org/download/(external link)

Bibliografia