Instance PHP/MySQL

Cette instance s'adresse au grand public souhaitant héberger des sites Web ou applicatifs écrits en PHP et utilisant des bases de données MySQL. La plupart des CMS fonctionnent sur cette instance, Wordpress, Joomla, Prestashop …

Vous pouvez également servir des sites statiques (uniquement en HTML) sur ce type d'instance.

Prérequis

  • Connaissances basiques du langage et des outils (SFTP, phpMyAdmin)

Fonctionnement général

Le fonctionnement de l'instance est assez simple et la mise en ligne d'un site Web se fait en quelques étapes :

  1. Déclarez un site sur l'instance : http://wiki.gandi.net/fr/simple/shs-dns_config
  2. Déposez les fichiers à la racine du répertoire 'htdocs' du site déclaré : http://wiki.gandi.net/fr/simple/sftp
  3. Importer les bases de données via phpMyAdmin : http://wiki.gandi.net/fr/simple/phpmyadmin

Votre page d'accueil doit se nommer index.html, ou index.php pour être interprété par défaut par le serveur Apache.
Toutes les erreurs Apache et php sont stockés dans des fichiers de logs accessibles sur votre instance.

Les caractéristiques de ce type d'instance

  • PHP Version 5.4 (lien vers un phpinfo)
  • php-apc 3.1
  • MySQL 5.5
  • phpMyAdmin 3.5
  • Apache 2.4
    • mod_filter.c
    • mod_vhost_alias.c
    • mod_unixd.c
    • mod_status.c
    • mod_setenvif.c
    • mod_rewrite.c
    • mod_remoteip.c
    • mod_negotiation.c
    • mod_mime.c
    • mod_info.c
    • mod_headers.c
    • mod_fastcgi_handler.c
    • mod_expires.c
    • mod_env.c
    • mod_dir.c
    • mod_deflate.c
    • mod_autoindex.c
    • mod_authz_user.c
    • mod_authz_host.c
    • mod_authz_core.c
    • mod_authn_file.c
    • mod_authn_core.c
    • mod_auth_basic.c
    • mod_alias.c
    • mod_access_compat.c
    • event.c
    • http_core.c
    • mod_so.c
    • core.c

Les spécifités de cette instance

  • PATH_INFO

L'option PATH_INFO est activé au niveau de PHP, ce qui implique que les URLs de type index.php/objet pourront fonctionner sans problème, c'est à dire sans nécessairement ajouter des règles de réécriture au fichier .htaccess.

  • allow_url_fopen

allow_url_fopen est activé; par ailleurs nous conseillons d'utiliser `curl`; voir http://phpsec.org/projects/phpsecinfo/tests/allow_url_fopen.html pour plus d'informations.

  • php.ini

le fichier php.ini n'est pas personnalisable. Il faut passer par la fonction php `ini_set()`.

  • Afficher les erreurs php

Les erreurs php sont présentent dans les logs via votre admin. Si vous désirez les afficher directement sur la page:

<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
?>
  • max_execution_time

La partie publique ainsi que la partie administration de l'instance possède un max_execution_time à 180 secondes par défaut, qu'il n'est pas possible de modifier vers le haut pour le moment. Pour le modifier vers le bas, utilisez ini_set(); ou set_time_limit();

  • Ajouts d'en-têtes

Depuis la version 2.4 d'Apache, certains caractères sont ignorés dans les en-têtes, tel que le underscore ('_'), ceci pour des raisons de sécurité. Ainsi, il est conseillé d'utiliser le caractère '-' qui sera automatiquement converti en '_' par Apache.

Pour plus d'informations :

http://httpd.apache.org/docs/trunk/fr/env.html#fixheader

  • Modifier la limitation de post_max_size et upload_max_filesize

Il n'est pas possible de modifier ces valeurs actuellement, la valeur par défaut est de 128M.

Dernière modification: le 27/04/2015 à 11:34 par Gilles L. (Gandi)