Bonjour,

Novice pour ce qui concerne les CMS en général et Drupal en particulier.

Je souhaite pour mon site (hébergé pour le moment en local mais par OVH à terme) pouvoir augmenter la taille des uploads.

Je comprends qu'il y ait certaines limitations chez OVH dans le cadre d'un hébergement mutualisé, mais je ne sais pas où trouver ces infos ni s'il y a effectivement moyen ou pas de les augmenter, et jusqu'où.

Dans l'idée, j'aurais souhaité quelque chose comme :
memory_limit = 128M 
post_max_size = 64M 
upload_max_filesize = 32M 
max_input_time = 600 
max_execution_time = 300


Est-ce pertinent ?

J'ai tenté de me refaire un php.ini à la racine de mon site, mais ça ne fonctionne pas (même après redémarrage de wamp). à priori on peut le faire via le .htaccess (à la racine toujours) mais je ne connais pas la syntaxe exacte (je ne sais pas quelles balises mettre pour encadrer le tout...
php_value memory_limit = 128M
php_value post_max_size 64M
php_value upload_max_filesize 32M
php_value max_input_time 600
php_value max_execution_time 300


Si quelqu'un peut me consacrer de son temps et de son savoir...
Merci d'avance
Bibi
Modifié par bibi555 (06 Apr 2018 - 20:04)
Modérateur
Bonjour,

La modification des paramètres du moteur PHP n'est pas toujours possible, l'hébergeur pouvant empêcher tout ou partie des réglages.

Avant de détailler côté hébergeur ce qu'il se passe, revenons à la partie locale. Le fichier php.ini est un fichier qui n'est prit en compte que dans le répertoire principal de Php. Que vous soyez sur Wampp, Xampp ou toute autre plate-forme le fonctionnement reste le même et ce fichier n'est prit en compte qu'à la racine du répertoire. Il est peut-être possible de l'étendre avec un fichier annexe placé dans une arborescence plus profonde mais cela serait peu orthodoxe.

Maintenant côté hébergeur, donc en ligne, il vous faut d'abord savoir quelle configuration est appliquée. On ne change pas une équipe qui gagne, il n'y a donc aucune raison de changer un paramètre adéquat.

Pour ce faire, il vous faudra prévoir une simple page php - nommons-là info.php pour l'exemple - que vous placerez à la racine de votre site et qui contiendra tout simplement ceci:
<?php
phpinfo();
?>


Cette petite fonction "magique" ressort l'intégralité de la configuration du moteur. Il est évident que ce fichier devra disparaître de l'hébergeur à terme. Si toutefois votre hébergeur interdit l'usage de cette fonction, il vous faudra en changer (d'hébergeur).

A partir de ce point vous saurez s'il vous est nécessaire de modifier la configuration.

Sachez que les paramètres peuvent être changés à différents endroits:
* certains ne se modifient que dans le fichier php.ini. Ces paramètres vous seront donc impossibles à modifier.
* d'autres peuvent se modifier au sein d'un script via la fonction ini_set('paramètre', 'valeur')
* Enfin il peut-être aussi possible d'en modifier certains via le fichier .htaccess soit via l'instruction php_flag paramètre valeur ou php_value paramètre valeur.
Mais que ce soit via un script ou le htaccess, là encore il appartient à votre hébergeur d'autoriser ou d'interdire toute manipulation. C'est pourquoi je vous recommande chaudement de tester les paramètres un par un et de constater leur effet via votre fichier info.php.

Voici pour ce qui concerne la théorie. Dans la pratique je vous recommande d'ouvrir deux onglets:
* l'un pointera sur la page Php.net - Où une directive de configuration peut être modifiée qui vous donne la dénomination des termes employés
* l'autre pointera sur Php.net - Liste des directives du php.ini qui reprend l'intégralité des paramètres avec pour indication les valeurs possibles ainsi que l'endroit où la modification est possible.

Sachez aussi que certains hébergeurs permettent de modifier ces paramètres directement à partir de l'interface (votre compte en ligne). Auquel cas il vous faudra faire un choix sur l'endroit où vous modifierez vos paramètres sachant qu'un modification au niveau du htaccess est plus "lourde" que via un script qui est plus lourde que via le panel.

Enfin, afin de pouvoir effectuer des tests hors ligne dans les meilleurs conditions, n'oubliez pas de répercuter stricto sensus les changement effectués en ligne. Donc si vous modifiez un paramètre via votre compte utilisateur, changez ce même paramètre hors ligne dans votre fichier php.ini. Par contre si vous modifier via un script, reprenez ce même script hors ligne.
Meilleure solution
Bonjour,
Enfin j'ai le temps de tester tout celà et de vous répondre.
Tout d'abord un grand merci !
Oui oui oui pour la fonction phpinfo(); ...
Disons que je cherchais à savoir plutôt s'il y avait des "seuils maximums" et lesquels.
Et là j'ai eu un flash en lisant l'en-tête de la seconde colonne... "Master"... le max possible est donc caché là... Smiley cligne

Bref cette idée de la fonction en ligne m'a apporté de riches informations puisque mon hébergement permet :

memory_limit = 512M
post_max_size = 130M
upload_max_filesize = 128M
max_input_time = -1
max_execution_time = 300

Donc oui comme vous disiez "on ne change pas une équipe qui gagne" et ça me parait amplement suffisant pour l'heure qui plus est.

En revanche j'ai souhaité appliquer ces mêmes paramètres en local afin d'avoir deux configurations similaires et donc...
J'ai suivit vos conseils (avec les 2 onglets)... et bien j'étais déjà tombé sur cette liste (des directives du php.ini) mais sans la comprendre... alors merci beaucoup.

Côté modifs, j'ai choisit de ne les faire que dans un seul fichier, et j'ai opté pour le php.ini, afin de ne pas "transporter" des infos inutiles lors de la mise en ligne.

memory_limit --> où ? PHP_INI_ALL (partout)
post_max_size --> où ? PHP_INI_PERDIR (php.ini, .htaccess httpd.conf, .user.ini)
upload_max_filesize --> où ? PHP_INI_PERDIR (php.ini, .htaccess httpd.conf, .user.ini)
max_input_time --> où ? PHP_INI_PERDIR (php.ini, .htaccess httpd.conf, .user.ini)
max_execution_time --> où ? PHP_INI_ALL (partout)

Pour la clarté, le temps passé, la quantité d'infos...
merci merci encore. Smiley smile