Cerca nel blog

domenica 30 marzo 2014

Plesk 8.6 personalizzare le impostazioni di PHP per un subdomain

L'ambiente in cui stiamo andando a lavorare è un server linux con distribuzione CentOS e il vecchio Plesk 8.6. Tutte le operazioni vengono eseguite con livello root (lanciando il comando su).

Gli obiettivi di oggi sono diversi:
  1. Cambiare la document Root di Apache per permettere di utilizzare un progetto sviluppato con Zend Framwork
  2. Modificare open_basedir per permettere l'esecuzione del progetto Zend Framwork.
  3. Non fare danni :-D

1 - Cambiare la document root:

Poichè Plesk 8.6 non ha le stesse features delle nuove versioni dobbiamo ricorrere ad un trucchetto ed agire a mano per questo obiettivo.

  • Via terminale ci posizionismo nella cartella del nostro sottodominio
    cd /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/
    Dove DOMAIN rappresenta il nome del dominio che state modificando e SUBDOMAIN il sottodominio a cui dovete modificare le impostazioni
  • Creiamo una nuova directory
    mkdir ZENDAPP
    dove ZENDAPP rappresenta il nome della cartella in cui dovete posizionere il Vs progetto.
  • Controlliamo e annotiamo i permessi e gli utenti assegnati alla document root eseguendo un:
    ls -al /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/
  • Rimuoviamo la document root originale
    rm -R /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/httpdocs/
  • Creiamo un link simbolico alla cartella della Ns applicazione
    ln -s /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/ZENDAPP/
    /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/httpdocs/
  • A questo punto cambiamo i permessi del link simbolico appena creato con quelli precedentemente annotati della cartella originale httpdocs. Quando cambiate il gruppo fate attenzione a digitare il path assoluto (comprensivo di slash finale!!!!) del link simbolico:
    chown -H UTENTE:GRUPPO /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/httpdocs/

2 - Modificare open_basedir o le impostazioni di php.ini

Abituato alla nuova versione di Plesk mi sono trovato spiazzato davanti a questo problemino del personalizzare php.ini per un particolare dominio!
L'operazione è semplice ma come per tutte le cose se non le sai....SALLE!

  • Spostarsi nella directory conf del nostro sottodominio
    cd /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/conf/
  • Creare un nuovo file con nome vhost.conf (io come editor ho installato nano)
    nano vhost.conf
  • E mettiamo dentro le impostazioni apache che ci servono
    <directory /var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/httpdocs>
            php_admin_value open_basedir "/var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/httpdocs:/tmp:/var/www/vhosts/DOMAIN/subdomains/SUBDOMAIN/ZENDAPP/:/usr/lib/php"
            php_admin_flag safe_mode off
    </directory>
Nell'esempio io ho abilitato alcune cartelle per l'open_basedir tra cui anche /usr/lib/php perchè la libreria di Zend risiede li dentro.


Ciao Alla prox!

Nessun commento:

Posta un commento