Upload Limit [php.ini]

  • Hallo Netcup-Menschen :D


    Seit einiger Zeit beziehe ich einen Debian-vServer mit IspCP und bin echt zufrieden damit. :)
    In den letzten Jahren habe ich meine Linux-Kenntnisse auch auffrischen können.


    Nun wollte ich den "upload_max_filesize"-Wert in der php.ini ändern.
    Jetzt frage ich mich; Wo liegt diese php.ini?!


    Ich habe mehrere gefunden und geändert, doch kann ich nicht mehr als 2M(B) Dateigröße hochladen.


    Ich hoffe Ihr könnt mir helfen!


    Kevin

  • Erstelle eine PHP-Datei mit folgendem Inhalt und rufe sie einmal über den Webserver auf:

    PHP
    <?php phpinfo(); ?>


    Dort steht auch der Pfad zur geladenen php.ini drinnen ;)



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Hay,
    danke für Deine schnelle Antwort!



    Jetzt bin ich ganz "geschockt" und zweifle an mir selbst.. :/


    Es wird -nichts- angezeigt. Die Seite ist leer.
    Auch wenn ich "echo phpinfo();" nutze bleibt die Seite weiß.
    Andere PHP-Scirpt funktionieren aber fehlerfrei.



    Kevin


    BTW; Zur Not werde ich eine Neuinstallation des vServers vornehmen müssen.


    Update:
    Habe nun folgende Nachricht erhalten:
    Warning: phpinfo() has been disabled for security reasons in /var/www/virtual/kevinkonsorr.de/htdocs/index.php on line 10



    Werde mal schauen, was sich durch Backup-Restore machen lässt..

  • welche php ini benutzt wird lässt sich ganz einfach mit: php -v
    auf der konsole rausfinden

    Logic will take you from A to B. Imagination will take you everywhere.(A.Einstein)
    Nur wer sein Ziel kennt findet auch den Weg!

  • Habe mal das "php -v" genutzt und lediglich folgende Ausgabe erhalten;


    root@server:~# php -v
    PHP 5.3.3-7+squeeze3 with Suhosin-Patch (cli) (built: Jun 28 2011 08:24:40)
    Copyright (c) 1997-2009 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH

  • ja...und php benutz die "cli"

    Logic will take you from A to B. Imagination will take you everywhere.(A.Einstein)
    Nur wer sein Ziel kennt findet auch den Weg!

  • Wenn ich das richtig verstanden habe, muss ich also die folgende Datei nutzen?
    "/etc/php5/cli/php.ini/"
    => Habe Änderungen im Punkt "upload_max_filesize" vorgenommen; Diese werden jedoch nicht übernommen..


    Kevin


    Anhang:
    Wenn ich Änderungen in "/var/www/fcgi/domain.de/php5/php.ini" im Punkt für die Uploadgröße vornehme, wird eine Änderungen übernommen.
    Aber:
    - phpinfo(); funktioniert immer noch nicht.
    - Gebe ich bspw. 15M für das Uploadlimit an, kann ich trotzdem nur 8MB (statt 2MB) hochladen..

  • welche php ini benutzt wird lässt sich ganz einfach mit: php -v
    auf der konsole rausfinden


    Nein, da PHP für Apache, CGI und CLI andere php.ini's verwendet ;)



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Hier findet man ein HowToo, mit allen Infos, die man für php.ini, in Verbindung mit vHosts oder Allgemein benötigt:
    How To Specify A Custom php.ini For A Web Site (Apache2 With mod_php) | HowtoForge - Linux Howtos and Tutorials


    Und die phpinfo aktivierst Du auch in der php.ini: /etc/php5/apache2/php.ini


    Dort mal nach phpinfo suchen und auskommentieren oder löschen.
    Sollte diese php.ini in einen vhost kopiert worden sein, dort auch mal nachsehen und gegebenenfalls auskommentieren.


    Netcup hat die phpinfo default deaktiviert, vermutlich aus SIcherheitsgründen.

    Schöne Grüße aus der Lüneburger Heide!
    Thomas

  • Der Fehler liegt glaub ich nicht an der falschen php.ini, sondern daran dass du vergisst/noch nicht weist das die Dateien als POST-Request gesendet werden, also musst du auch da die max. Größe ändern.


    Schreib das mal in die "upload.php" ohne, dass vorher schon etwas ge"echo"t wird:


    ini_set("upload_max_filesize","20M");
    ini_set("post_max_size","28M");
    ini_set("max_execution_time","0");

  • Das ist aber dann wirklich eine dirty Lösung, zumal es sein kann, von Anbieter zu Anbieter, dass das nicht erlaubt ist.
    So ziemlich Jeder rät von der PHP-Lösung ab. :P


    Da gefällt mir die Option, über die htaccess zu gehen schon wesentlich besser, auch wenn das ebenso nicht überall erlaubt ist:

    Code
    php_value upload_max_filesize xxxM
    
    
    
    
         php_value max_execution_time xxx
    ...


    Auf eigenen Servern ist es immer besser über die Serverkonfiguration zu gehen und nicht solche dirty Lösungen zu verwenden. ^^

    Schöne Grüße aus der Lüneburger Heide!
    Thomas

    Einmal editiert, zuletzt von TPIT-Service ()

  • Auch wenn der Beitrag schon ein paar Tage älter ist :


    Hast du denn auch daran gedacht nach Änderung der PHP.ini den Apache neu zu starten?


    Hast du das Problem gelöst?

    9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt, die letzte summt ständig die Melodie von Tetris.

  • nur um das ganze mal zu vervollständigen:
    /var/www/fcgi/domain.tld/php5/php.ini
    wäre die richtige PHP Datei wenn man ispCP benutzt.


    es muss aber "upload_max_filesize" UND "post_max_size" geändert werden - wobei zweiteres immer wenige KB/MB höher sein sollte da man ja in einem Formular meist noch Text mit schickt ;)


    danach ein "/etc/init.d/apache2 reload"


    phpinfo(); geht nicht weil es im ispCP standardmäßig mit in jeder (neuen) php.ini in "disable_functions" steht.


    Standard Einstellungen für ispCP bzw. PHP die jeder Neu-Kunde bekommen soll kann man hier festlegen
    /etc/ispcp/fcgi/parts