Contenu | Rechercher | Menus

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Both sides previous revision Révision précédente
Prochaine révision
Révision précédente
php [Le 16/03/2013, 21:26]
109.223.114.82 [Installation minimale]
php [Le 14/10/2014, 09:27] (Version actuelle)
bcag2 [Installation minimale] ajout chemin de php.ini
Ligne 2: Ligne 2:
  
 ====== PHP ====== ====== PHP ======
-PHP (acronyme récursif pour "​**P**HP:​ **H**ypertext **P**reprocessor"​) est un langage de script principalement utilisé pour produire des pages web de manière dynamique. Il est donc, dans la très grande majorité des cas, couplé à un serveur HTTP (comme [[:​apache2|Apache]]) pour la communication avec le client web.+PHP (acronyme récursif pour "​**P**HP:​ **H**ypertext **P**reprocessor"​, PHP étant au départ l'​acronyme de **P**ersonal **H**ome **P**age) est un langage de script principalement utilisé pour produire des pages web de manière dynamique. Il est donc, dans la très grande majorité des cas, couplé à un serveur HTTP (comme [[:​apache2|Apache]]) pour la communication avec le client web.
  
 La production de pages web dynamiques pouvant nécessiter une interaction avec une base de données, PHP est souvent utilisé en association avec un système de gestion de base de données (SGBD) comme [[:​mysql|MySQL]]. La production de pages web dynamiques pouvant nécessiter une interaction avec une base de données, PHP est souvent utilisé en association avec un système de gestion de base de données (SGBD) comme [[:​mysql|MySQL]].
Ligne 10: Ligne 10:
 PHP étant principalement utilisé comme langage de script serveur, seule son installation dans ce cadre là est présentée ici. PHP étant principalement utilisé comme langage de script serveur, seule son installation dans ce cadre là est présentée ici.
  
 +béta installation php 5.4.4
 +
 +Activer les dépôts officiels multiverse et backport ainsi que leur sources.
 +
 +ex ubuntu 12.04:
 +
 +<​code>​sudo su
 +
 +cat > /​etc/​apt/​sources.list <<EOF
 +deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise main restricted
 +deb http://​security.ubuntu.com/​ubuntu precise-security main restricted
 +deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates main restricted
 +
 +# Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #)
 +deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise main restricted
 +deb-src http://​security.ubuntu.com/​ubuntu precise-security main restricted
 +deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates main restricted
 +
 +deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise universe multiverse
 +deb http://​security.ubuntu.com/​ubuntu precise-security universe multiverse
 +deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates universe multiverse
 +
 +# Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #)
 +deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise universe multiverse
 +deb-src http://​security.ubuntu.com/​ubuntu precise-security universe multiverse
 +deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates universe multiverse
 +deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise-backports main restricted universe multiverse
 +
 +# Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #)
 +deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise-backports main restricted universe multiverse
 +EOF
 +exit</​code>​
 +<​code>​sudo apt-get update</​code>​
 +<​code>​sudo apt-get -y upgrade</​code>​
 +<​code>​sudo apt-get -y install git vim libmcrypt-dev</​code>​
 +<​code>​sudo apt-get -y build-dep php5 php5-mcrypt</​code>​
 +
 +
 +compiller manuellement
 +
 +<​code>​cd /​usr/​local/​src/</​code>​
 +<​code>​git clone --branch PHP-5.4 https://​github.com/​php/​php-src.git php-5.4.4</​code>​
 +<​code>​cd /​usr/​local/​src/​php-5.4.4/​ext/</​code>​
 +<​code>​sudo wget http://​pecl.php.net/​get/​APC-3.1.13.tgz</​code>​
 +<​code>​sudo tar -xvf APC-3.1.13.tgz</​code>​
 +<​code>​sudo mv APC-3.1.13 apc</​code>​
 +<​code>​cd /​usr/​local/​src/​php-5.4.4/</​code>​
 +<​code>​sudo rm -rf configure</​code>​
 +<​code>​sudo ./buildconf --force</​code>​
 +<​code>​./​configure --enable-bcmath \
 +  --enable-calendar \
 +  --enable-dba \
 +  --enable-exif \
 +  --enable-ftp \
 +  --enable-mbstring \
 +  --enable-shmop \
 +  --enable-sigchild \
 +  --enable-soap \
 +  --enable-sockets \
 +--enable-sysvmsg \
 +  --enable-wddx \
 +  --enable-zip \
 +  --with-apxs2=/​usr/​local/​apache2/​bin/​apxs \
 +  --with-bz2 \
 +  --with-config-file-path=/​usr/​local/​apache2/​conf \
 +  --with-curl \
 +  --with-gd \
 +  --with-gettext \
 +  --with-mcrypt \
 +  --with-mysql \
 +  --with-mysqli \
 +  --with-openssl \
 +  --with-pdo-mysql \
 +  --with-pdo-pgsql \
 +  --with-pgsql \
 +  --with-xmlrpc \
 +  --with-zlib
 +
 +</​code>​
 +<​code>​sudo make</​code>​
 +<​code>​sudo apt-get -y install checkinstall</​code>​
 +<​code>​sudo checkinstall --pkgname=php5-4 --pkgversion="​5.4.4"​ --backup=no --deldoc=yes --fstrans=no --default</​code>​
 +
 +
 +installer avec le pacquet deb ubuntu 12.04 amd64 (64 bit) seulement
 +
 +
 +
 +
 +<​code>​wget http://​www.petit-fichier.fr/​2013/​05/​08/​php5-4-5-4-4-1-amd64/​php5-4-5-4-4-1-amd64.deb</​code>​
 +<​code>​sudo dpkg -i php5-4-5-4-4-1-amd64.deb</​code>​
 +
 +
 +configurer
 +
 +<​code>​sudo su
 +cp /​usr/​local/​src/​php-5.4.4/​php.ini-development /​usr/​local/​apache2/​conf/​php.ini
 +sed -i '​s/​^;​\(date\.timezone\) =\s*$/\1 = "​Europe\/​Paris"/​g'​ /​usr/​local/​apache2/​conf/​php.ini
 +sed -i '​s/​^\(memory_limit\) = .*$/\1 = 256M/​g'​ /​usr/​local/​apache2/​conf/​php.ini
 +sed -i '​s/​^\(post_max_size\) = .*$/\1 = 32M/g' /​usr/​local/​apache2/​conf/​php.ini
 +sed -i '​s/​^\(upload_max_filesize\) = .*$/\1 = 32M/g' /​usr/​local/​apache2/​conf/​php.ini
 +sed -i '​s/​^\(max_execution_time\) = .*$/\1 = 3600/​g'​ /​usr/​local/​apache2/​conf/​php.ini
 +sed -i '​s/​^\(max_input_time\) = .*$/\1 = 7200/​g'​ /​usr/​local/​apache2/​conf/​php.ini
 +cat > /​usr/​local/​apache2/​conf/​extra/​httpd-php5.conf <<EOF
 +#
 +# This next section will call PHP for .php, .phtml, and .phps files
 +#
 +AddType application/​x-httpd-php .php
 +AddType application/​x-httpd-php .phtml
 +AddType application/​x-httpd-php-source .phps
 +
 +#
 +# This is the directory containing php.ini
 +#
 +PHPIniDir "/​usr/​local/​apache2/​conf"​
 +EOF
 +echo Include conf/​extra/​httpd-php5.conf >> /​usr/​local/​apache2/​conf/​httpd.conf
 +
 +echo LoadModule php5_module modules/​libphp5.so >> /​usr/​local/​apache2/​conf/​httpd.conf
 +sed -i '​s/​DirectoryIndex index.html/​DirectoryIndex index.html index.cgi index.pl index.php index.xhtml/​g'​ /​usr/​local/​apache2/​conf/​httpd.conf
 +rm -f /​var/​www/​index.html
 +cat > /​var/​www/​index.php <<EOF
 +<?php phpinfo(); ?>
 +EOF
 +/​etc/​init.d/​apache2 restart
 +exit
 +</​code>​
 +
 +Attention la désinstallation de php 5.4 est impossible.
 ==== Installation minimale ==== ==== Installation minimale ====
 Pour installer la version 5 de PHP (dernière version stable), il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] suivant:\\ Pour installer la version 5 de PHP (dernière version stable), il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] suivant:\\
Ligne 20: Ligne 149:
 PHP 5.4 incorpore son propre serveur HTTP utilisable dans un environnement de développement. ​ PHP 5.4 incorpore son propre serveur HTTP utilisable dans un environnement de développement. ​
 </​note>​ </​note>​
 +le chemin d'​accès au fichier php.ini est généralement (ubuntu 14.04 server) <​code>/​etc/​php5/​apache2/​php.ini</​code>​
 ==== Association avec un serveur de base de données ==== ==== Association avec un serveur de base de données ====
 PHP permet de se connecter à différents types de serveurs de base de données. Il est cependant nécessaire d'​installer des modules complémentaires. PHP permet de se connecter à différents types de serveurs de base de données. Il est cependant nécessaire d'​installer des modules complémentaires.


Le contenu de ce wiki est sous licence : CC BY-SA v3.0