Parliamo del progetto
Apache

Apache: installare una configurazione PHP dedicata per vhost

Questa installazione è testésu Ubuntu 15.01 ma potrebbeêtre utiliée per un server Debian in produzione.SuPhp n’non è più mantenuto da alcuni anniéora, non’è quindi più nei repository delle distribuzioni récentin...

Validation d’un environnement web PHP et Apache

Questa installazione è testésu Ubuntu 15.01 ma potrebbeêtre utiliée per un server Debian in produzione.

SuPhp n’non è più mantenuto da alcuni anniéora, non’è quindi più nei repository delle distribuzioni récentinaia, e diventa difficile compilarlo su un kernel 4.x (che è il mio caso, da quando sono passato a Ubuntu 15.10).

Nota: il pacchetto è sempre disponibile su Ubuntu 14.01 LTS.

1 –Installazione dei pacchetti di base.

sudo apt-get install    build-essential    fakeroot    dh-make    debconf    execstack  dh-modaliases xserver-xorg-dev  automake autoconf libaprutil1 libaprutil1-dev libsvn-dev wx2.8-headers libwxgtk2.8-dev  libxml2-dev libpcre3-dev libbz2-dev libcurl4-openssl-dev  libjpeg-dev libpng12-dev libxpm-dev libfreetype6-dev libmysqlclient-dev  libgd-dev libgmp-dev libsasl2-dev libmhash-dev unixodbc-dev freetds-dev libpspell-dev libsnmp-dev libtidy-dev libxslt1-dev libmcrypt-dev apache2 apache2-dev libxml2 libaprutil1-dev libxml2 libxml2-dev libssl-dev pkg-config curl libcurl4-openssl-dev enchant libenchant-dev libjpeg8 libjpeg8-dev libpng12-0 libpng12-dev  libvpx-dev libfreetype6 libfreetype6-dev  libgmp10 libgmp-dev libicu-dev mcrypt libmcrypt4 libmcrypt-dev libpspell-dev libedit2 libedit-dev libsnmp30 libsnmp-dev libxslt1.1 libxslt1-dev postgresql-server-dev-9.4 postgresql-server-dev-all

2- Compilazione di PHP

Si comincia creando un collegamento simbolico di’una libreria che potrebbe essere potenzialmente introvabile durante la compilazione :

sudo ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h

Su rétazzaèsui sorgenti di PHP :

sudo wget -O php-5.6.16.tar.gz http://fr2.php.net/get/php-5.6.16.tar.gz/from/this/mirror && tar xzvf php-5.6.16.tar.gz && cd php-5.6.16

Poi si compila:

sudo ./configure --prefix=/usr/local/php --with-apxs2=/usr/bin/apxs2  --with-config-file-path=/usr/local/php/conf --with-config-file-scan-dir=/usr/local/php/conf.d --enable-debug --with-openssl --with-kerberos --with-zlib --enable-calendar --with-curl  --with-enchant --enable-exif --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-vpx-dir=/usr --with-freetype-dir=/usr  --enable-exif --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-intl --enable-mbstring --with-mcrypt --with-mysql --with-mysqli --enable-pcntl --with-pdo-mysql --with-pdo-pgsql --with-pgsql --with-pspell --with-libedit --with-readline --enable-shmop  --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvshm --with-xsl --enable-zip --with-pear --enable-zend-signals --enable-maintainer-zts --enable-bcmath  && sudo make && sudo make install

3- Configurazione d’apache :
Su référence il nostro réporta in cui si trova php, nel file di configurazione di’apache /etc/apache2/apache2.conf

sudo vi /etc/apache2/apache2.conf

ScriptAlias /php5.6.16/ "/usr/local/php/bin/"
<Directory "/usr/local/php/bin/">
AllowOverride All
Options None
Order allow,deny
Allow from all
</Directory>

Su procèpoi alla configurazione del nostro vhost con le seguenti direttive:

Action php-script '/php5.6.16/php-cgi-5.6.16'
AddHandler php-script .php
PHPIniDir "/var/www/ATLV/"

Ciò che ci fornisce una configurazione come segue :

<VirtualHost *:80>
Options FollowSymLinks
DirectoryIndex app_dev.php
ServerName www.kuoni.dev
DocumentRoot /var/www/ATLV/web

Action php-script '/php5.6.16/php-cgi-5.6.16'
AddHandler php-script .php
PHPIniDir "/var/www/ATLV/"
<Directory /var/www/ATLV/web>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
DirectoryIndex app_dev.php
</Directory>

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

Ci restaàattivare la modalità azioni :

a2enmod actions

Eàriavviare apache2 :

service apache2 restart

E voilà :

 

Sélection_050

Contesto di compatibilità

Questa procedura documenta un ambiente PHP o Apache del suo tempo. I rami PHP 5.x e 7.x non ricevono più il supporto standard del progetto PHP: non distribuire questa configurazione così com'è su un nuovo server.

  • Identificate prima le versioni effettivamente installate e i moduli caricati.
  • Preparate un backup della configurazione e una procedura di rollback.
  • Convalida la sintassi, poi i percorsi critici, su una versione di PHP ancora supportata.

Riferimento : versioni di PHP attualmente supportate.

Condividi questo articolo