Comment définir upload_max_filesize dans .htaccess?


90

J'ai essayé de mettre ces 2 lignes

php_value post_max_size 30M
php_value upload_max_filesize 30M

dans mon fichier racine .htaccess mais cela m'apporte un message "Erreur interne du serveur" ...
php5 fonctionne sur le serveur
Je n'ai pas accès à php.ini donc je pense que htaccess est ma seule chance.
Pouvez-vous me dire où est l'erreur?
Merci d'avance

Réponses:


137

php_value upload_max_filesize 30M est correct.

Vous devrez contacter vos hébergeurs - certains ne vous permettent pas de modifier les valeurs dans php.ini


2
Merci mais ini_set () ne fonctionne pas pour upload_max_filesize et post_max_size: /
T1000

quand vous dites "ne fonctionne pas", voulez-vous dire, ne pas produire le résultat souhaité / produire une erreur / autre chose?
Kerry Jones

définissez error_reporting (E_ALL) et voyez si quelque chose s'affiche. En dehors de cela, contactez votre fournisseur d'hébergement, il devrait être en mesure de vous aider. Certains bloquent les modifications apportées à ces variables, car ils ne souhaitent pas que vous deveniez un site majeur du trafic.
Kerry Jones

14
Ces options ne peuvent pas être définies par ini_set (). Voir php.net/manual/en/ini.list.php et php.net/manual/en/configuration.changes.modes.php
dev-null-

De nombreux hébergeurs ne le permettent pas, mais vous pouvez également créer un fichier php.ini, le mettre à la racine du site et remplacer les valeurs là-bas.
Erik Čerpnjak

37

Si vous obtenez 500 - Erreur de serveur interne, cela signifie que vous n'êtes pas autorisé à définir ces valeurs par .htaccess . Vous devez contacter vos fournisseurs de serveur Web et demander à définir AllowOverride Optionsvotre hôte ou à mettre ces lignes dans leur fichier de configuration d'hôte virtuel.


Je vous remercie. Le journal des erreurs a donné des absurdités sur les commandes non valides, ce qui est loin de «Allez changer votre fichier de configuration d'hôte virtuel».
Altimus Prime

33
php_value memory_limit 30M
php_value post_max_size 100M
php_value upload_max_filesize 30M

Utilisez tous les 3 .htaccessaprès tout à la dernière ligne. php_value post_max_sizedoit être supérieur aux deux autres.


2
puis-je savoir la raison pour laquelle php_value post_max_sizedoit être plus que les deux autres?
Anusha

@Anusha si vous y réfléchissez, vous pourriez faire un message avec deux fichiers de 30M + plus de données textuelles, et cela coûtera quelques octets supplémentaires, c'est probablement la raison
giovannipds

12

Pour corriger cela, créez un fichier appelé php.ini et enregistrez-le au même emplacement que votre fichier .htaccess et entrez le code suivant à la place:

upload_max_filesize = "250M"
post_max_size = "250M"

4
Cela ne fonctionnera que sur certains environnements d'hébergement. A travaillé pour moi sur mon compte d'hébergement Web Fusion.
Ian Jamieson

3

Si votre serveur Web exécute php5, je pense que vous devez utiliser php5_value. Cela a résolu la même erreur que j'ai reçue lors de l'utilisation php_value.


-2

Les deux commandes sont correctes

php_value post_max_size 30M 
php_value upload_max_filesize 30M 

MAIS pour utiliser le, .htaccessvous devez activer rewrite_moduledans le fichier de configuration Apache. Dans httpd.conftrouver cette ligne:

# LoadModule rewrite_module modules/mod_rewrite.so

et retirez le fichier #.


6
IMHO, pour permettre l'utilisation de .htaccess, tout ce que vous avez à faire est de définir AllowOverrideautre chose que none. Le chargement de rewrite_modulen'est requis que pour les directives ModRewrite.
RonaldPK
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.