1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Um Zugriff auf die Ressourcen sowie auf Teile des Forums zu erhalten, müsst ihr euren XenForo Validation Token an dieser Stelle hinterlegen. Probleme in diesem Umfeld bitte im Forum melden. Danke!
    Information ausblenden

PHP 5.4 .38 - 5.5.x zusätzlich installieren (Plesk 12, Ubuntu 12.04 LTS)

Dieses Thema im Forum "Technik und Co." wurde erstellt von otto, 23. Feb. 2015.

  1. otto

    otto Bekanntes Mitglied Lizenzinhaber

    Hallo,

    ich verzweifel grad am Versuch PHP 5.4.38 oder höher auf unserem Server mit php 5.3.10 zu installieren, zusätzlich versteht sich.

    Bis zum Konfigurieren klappts:

    Code:
    cd /usr/local/src/
    localhost:/usr/local/src# wget http://de1.php.net/get/php-5.5.15.tar.gz/from/this/mirror -O php-5.4.38.tar.gz
    localhost:/usr/local/src# tar xf php-5.4.38.tar.gz
    Code:
    localhost:/usr/local/src# cd php-5.4.38/
    localhost:/usr/local/src/php-5.4.38# mkdir -p /usr/local/php-5.4.38
    Code:
    ./configure '--with-libdir=lib64' '--cache-file=../config.cache' '--prefix=/usr/local/php-5.4.38' '--with-config-file-path=/usr/local/php-5.4.38/etc' '--disable-debug' '--with-pic' '--disable-rpath' '--disable-cgi' '--with-bz2' '--with-curl' '--with-freetype-dir=/usr/local/php-5.4.38' '--with-png-dir=/usr/local/php-5.4.38' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr/local/php-5.4.38' '--with-openssl' '--with-pspell' '--with-pcre-regex' '--with-zlib' '--enable-exif' '--enable-ftp' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-wddx' '--with-kerberos' '--with-unixODBC=/usr' '--enable-shmop' '--enable-calendar' '--without-sqlite3' '--with-libxml-dir=/usr/local/php-5.4.38' '--enable-pcntl' '--enable-mbstring' '--enable-mbregex' '--with-gd' '--enable-bcmath' '--with-xmlrpc' '--with-mysql=/usr' '--with-mysqli' '--with-snmp' '--enable-soap' '--with-xsl' '--enable-xmlreader' '--enable-xmlwriter' '--enable-pdo' '--with-pdo-mysql' '--with-pdo-pgsql' '--with-pear=/usr/local/php-5.4.38/pear' '--with-mcrypt' '--enable-intl' '--without-pdo-sqlite' '--with-config-file-scan-dir=/usr/local/php-5.4.38/php.d'
    aber dann wird gemeckert:

    config_fehler_libcurl.jpg
    Weis jemand wie ich das Problem behoben bekomme?
     
  2. otto

    otto Bekanntes Mitglied Lizenzinhaber

  3. DRaver

    DRaver Bekanntes Mitglied

    Schon mal ins phpinfo geschaut, ob cURL wirklich läuft und wenn ja,in welchem Pfad das liegt?
     
  4. otto

    otto Bekanntes Mitglied Lizenzinhaber

  5. DRaver

    DRaver Bekanntes Mitglied

    Hmmm, du compilierst ja aus irgendeinem Grund selber. Vielleicht fehlt da noch was an Dateien. Ansonsten mal mit
    "apt-get install libcurl4-gnutls-dev" das richtige nachinstallieren.
     
  6. otto

    otto Bekanntes Mitglied Lizenzinhaber

    Ich compiliere selber, weil Ubuntu 12.04 LTS bei 5.3.x bleibt, nur Wartungsupdates nachschebt und es offiziell keine Updates auf 5.4 oder 5.5 gibt. Deshalb wollte ich es selbst compilieren da wir den Server noch bis mind. Ende diesen Jahres haben werden und erst dann auf einen neuen Server und ein aktuelleres Betriebssystem wechseln werden.

    Kann es zu Problemen kommen wenn ich das so wie beschrieben nach installiere? Also das sich womöglich 2 Versionen von curl stören?

    Und generell mal gefragt - wie könnte man es im Fall eines Falles wieder los werden? Über apt-get remove ? Würde es das dann sauber entfernen?
     
  7. DRaver

    DRaver Bekanntes Mitglied

    Wenn du dir unsicher bist, solltest du einen absoluten Spezialisten fragen in Sachen Linux.
     
  8. McAtze

    McAtze Innendienst Lizenzinhaber

    Linus Torvald vielleicht .. ;)
     
    Lemminator und otto gefällt das.
  9. otto

    otto Bekanntes Mitglied Lizenzinhaber

    Na meine Fähigkeiten beschränken sich seit Jahren eher aufs normale Maß an absichern, updaten, upgraden, installieren und rudimentäres konfigurieren über die Konsole, rest halt Plesk.
    Ein Paket wieder runter hauen musste ich noch nicht bisher, zumal wir eh alle 2 Jahre den Server wechseln da es dann zum gleichen Preis meist deutlich mehr Hardware und aktuelle Betriebssystem gibt.
     
  10. otto

    otto Bekanntes Mitglied Lizenzinhaber

    So, neuer Anlauf:

    PHP 5.4.38 auf Ubuntu 12.04 LTS parallel zum installierten PHP 5.3.10

    Benötigte Pakete installieren:
    Code:
    sudo apt-get install libxml2-dev libmysqlclient-dev build-essential php5-dev libicu-dev libpcre3-dev libbz2-dev libcurl4-openssl-dev libdb4.8-dev libjpeg-dev libpng12-dev libxpm-dev libfreetype6-dev libmysqlclient-dev postgresql-server-dev-9.1 libt1-dev libgd2-xpm-dev libgmp-dev libsasl2-dev libmhash-dev unixodbc-dev freetds-dev libpspell-dev libsnmp-dev libtidy-dev libxslt1-dev libmcrypt-dev libc-client2007e-dev nano
    Lib64 Symlinks:
    Der Konfigurationsprozess brachte immer Fehler ( zB.: configure: error: Cannot find imap library (libc-client.a). Please check your c-client installation.) aus, da manche Bibliotheken nicht in der 64bit Version vorhanden waren. So konnte ich es lösen:
    Code:
    sudo mkdir /usr/lib64
    
    sudo ln -s /usr/lib/libc-client.a /usr/lib64/libc-client.a
    sudo ln -s /usr/lib/x86_64-linux-gnu/libssl.a /usr/lib64/libssl.a
    sudo ln -s /usr/lib/x86_64-linux-gnu/libldap_r.a /usr/lib64/libldap_r.a
    sudo ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib64/libldap.so
    PHP 5.4.38 herunter laden:
    Code:
    cd /usr/local/src
    
    sudo mkdir php5438
    
    cd php5438
    
    sudo wget http://de1.php.net/get/php-5.4.38.tar.gz/from/at2.php.net/mirror
    
    sudo tar xzvf mirror
    
    cd php-5.4.38
    Die neue zusätzliche PHP Version konfigurieren:
    Code:
    sudo ./configure '--with-libdir=lib64' '--cache-file=../config.cache' '--prefix=/usr/local/php-5.4.38-cgi' '--with-config-file-path=/usr/local/php-5.4.38-cgi/etc' '--disable-debug' '--with-pic' '--disable-rpath' '--disable-cgi' '--with-bz2' '--with-curl' '--with-freetype-dir=/usr/local/php-5.4.38-cgi' '--with-png-dir=/usr/local/php-5.4.38-cgi' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr/local/php-5.4.38-cgi' '--with-openssl' '--with-pspell' '--with-pcre-regex' '--with-zlib' '--enable-exif' '--enable-ftp' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-wddx' '--with-kerberos' '--with-unixODBC=/usr' '--enable-shmop' '--enable-calendar' '--without-sqlite3' '--with-libxml-dir=/usr/local/php-5.4.38-cgi' '--enable-pcntl' '--with-imap' '--with-imap-ssl' '--enable-mbstring' '--enable-mbregex' '--with-gd' '--enable-bcmath' '--with-xmlrpc' '--with-ldap' '--with-ldap-sasl' '--with-mysql=/usr' '--with-mysqli' '--with-snmp' '--enable-soap' '--with-xsl' '--enable-xmlreader' '--enable-xmlwriter' '--enable-pdo' '--with-pdo-mysql' '--with-pdo-pgsql' '--with-pear=/usr/local/php-5.4.38-cgi/pear' '--with-mcrypt' '--enable-intl' '--without-pdo-sqlite' '--with-config-file-scan-dir=/usr/local/php-5.4.38-cgi/php.d'
    Ich hatte gelesen das --enable-fastcgi mit php 5.4 abgelöst wird durch --disable-cgi

    Kompilieren, Testen, installieren:
    Code:
    sudo make
    
    sudo make test
    Ergebnis:
    =====================================================================
    TEST RESULT SUMMARY
    ---------------------------------------------------------------------
    Exts skipped : 19
    Exts tested : 58
    ---------------------------------------------------------------------

    Number of tests : 12654 10203
    Tests skipped : 2451 ( 19.4%) --------
    Tests warned : 0 ( 0.0%) ( 0.0%)
    Tests failed : 29 ( 0.2%) ( 0.3%)
    Expected fail : 35 ( 0.3%) ( 0.3%)
    Tests passed : 10139 ( 80.1%) ( 99.4%)
    ---------------------------------------------------------------------
    Time taken : 1210 seconds
    =====================================================================

    =====================================================================
    EXPECTED FAILED TEST SUMMARY
    ---------------------------------------------------------------------
    Test open_basedir configuration [tests/security/open_basedir_linkinfo.phpt] XFAIL REASON: BUG: open_basedir cannot delete symlink to prohibited file. See also
    bugs 48111 and 52176.
    Inconsistencies when accessing protected members [Zend/tests/access_modifiers_008.phpt] XFAIL REASON: Discussion: http://marc.info/?l=php-internals&m=120221184420957&w=2
    Inconsistencies when accessing protected members - 2 [Zend/tests/access_modifiers_009.phpt] XFAIL REASON: Discussion: http://marc.info/?l=php-internals&m=120221184420957&w=2
    Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770.phpt] XFAIL REASON: See Bug #48770
    Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770_2.phpt] XFAIL REASON: See Bug #48770
    Bug #48770 (call_user_func_array() fails to call parent from inheriting class) [Zend/tests/bug48770_3.phpt] XFAIL REASON: See Bug #48770
    Bug #63336 (invalid E_NOTICE error occur) [Zend/tests/bug63336.phpt] XFAIL REASON: Bug is not fixed yet
    Bug #64896 (Segfault with gc_collect_cycles using unserialize on certain objects) [Zend/tests/bug64896.phpt] XFAIL REASON: We can not fix this bug without a significant (performace slow down) change to gc
    Initial value of static var in method depends on the include time of the class definition [Zend/tests/method_static_var.phpt] XFAIL REASON: Maybe not a bug
    DateTime::add() -- fall type2 type3 [ext/date/tests/DateTime_add-fall-type2-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::add() -- fall type3 type2 [ext/date/tests/DateTime_add-fall-type3-type2.phpt] XFAIL REASON: Various bugs exist
    DateTime::add() -- fall type3 type3 [ext/date/tests/DateTime_add-fall-type3-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::add() -- spring type2 type3 [ext/date/tests/DateTime_add-spring-type2-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::add() -- spring type3 type2 [ext/date/tests/DateTime_add-spring-type3-type2.phpt] XFAIL REASON: Various bugs exist
    DateTime::add() -- spring type3 type3 [ext/date/tests/DateTime_add-spring-type3-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::diff() -- fall type2 type3 [ext/date/tests/DateTime_diff-fall-type2-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::diff() -- fall type3 type2 [ext/date/tests/DateTime_diff-fall-type3-type2.phpt] XFAIL REASON: Various bugs exist
    DateTime::diff() -- fall type3 type3 [ext/date/tests/DateTime_diff-fall-type3-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::diff() -- spring type2 type3 [ext/date/tests/DateTime_diff-spring-type2-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::diff() -- spring type3 type2 [ext/date/tests/DateTime_diff-spring-type3-type2.phpt] XFAIL REASON: Various bugs exist
    DateTime::diff() -- spring type3 type3 [ext/date/tests/DateTime_diff-spring-type3-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::sub() -- fall type2 type3 [ext/date/tests/DateTime_sub-fall-type2-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::sub() -- fall type3 type2 [ext/date/tests/DateTime_sub-fall-type3-type2.phpt] XFAIL REASON: Various bugs exist
    DateTime::sub() -- fall type3 type3 [ext/date/tests/DateTime_sub-fall-type3-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::sub() -- spring type2 type3 [ext/date/tests/DateTime_sub-spring-type2-type3.phpt] XFAIL REASON: Various bugs exist
    DateTime::sub() -- spring type3 type2 [ext/date/tests/DateTime_sub-spring-type3-type2.phpt] XFAIL REASON: Various bugs exist
    DateTime::sub() -- spring type3 type3 [ext/date/tests/DateTime_sub-spring-type3-type3.phpt] XFAIL REASON: Various bugs exist
    RFC: DateTime and Daylight Saving Time Transitions (zone type 3, bd2) [ext/date/tests/rfc-datetime_and_daylight_saving_time-type3-bd2.phpt] XFAIL REASON: Still not quite right
    RFC: DateTime and Daylight Saving Time Transitions (zone type 3, fs) [ext/date/tests/rfc-datetime_and_daylight_saving_time-type3-fs.phpt] XFAIL REASON: Still not quite right
    Bug #67296 (filter_input doesn't validate variables) [ext/filter/tests/bug49184.phpt] XFAIL REASON: See Bug #49184
    zend multibyte (2) [ext/mbstring/tests/zend_multibyte-02.phpt] XFAIL REASON: https://bugs.php.net/bug.php?id=66582
    zend multibyte (6) [ext/mbstring/tests/zend_multibyte-06.phpt] XFAIL REASON: https://bugs.php.net/bug.php?id=66582
    zend multibyte (7) [ext/mbstring/tests/zend_multibyte-07.phpt] XFAIL REASON: https://bugs.php.net/bug.php?id=66582
    zend multibyte (9) [ext/mbstring/tests/zend_multibyte-09.phpt] XFAIL REASON: https://bugs.php.net/bug.php?id=66582
    Bug #45712 (NaN/INF comparison) [ext/standard/tests/math/bug45712.phpt] XFAIL REASON: Bug 45712 not fixed yet.
    =====================================================================

    =====================================================================
    FAILED TEST SUMMARY
    ---------------------------------------------------------------------
    Bug #43073 (TrueType bounding box is wrong for angle<>0) freetype < 2.4.10 [ext/gd/tests/bug43073.phpt]
    Gettext basic test with en_US locale that should be on nearly every system [ext/gettext/tests/gettext_basic-enus.phpt]
    Test if bindtextdomain() returns string id if no directory path is set(if directory path is 'null') [ext/gettext/tests/gettext_bindtextdomain-cwd.phpt]
    Test dcgettext() functionality [ext/gettext/tests/gettext_dcgettext.phpt]
    Test dgettext() functionality [ext/gettext/tests/gettext_dgettext.phpt]
    Test if dngettext() returns the correct translations (optionally plural). [ext/gettext/tests/gettext_dngettext-plural.phpt]
    Test ngettext() functionality [ext/gettext/tests/gettext_ngettext.phpt]
    Bug #67052 - NumberFormatter::parse() resets LC_NUMERIC setting [ext/intl/tests/bug67052.phpt]
    Bug #64124 IPv6 malformed [ext/snmp/tests/bug64124.phpt]
    Bug #64159: Truncated snmpget [ext/snmp/tests/bug64159.phpt]
    IPv6 support [ext/snmp/tests/ipv6.phpt]
    OO API: getErrno & getError methods [ext/snmp/tests/snmp-object-errno-errstr.phpt]
    OO API [ext/snmp/tests/snmp-object.phpt]
    Function snmp2_get [ext/snmp/tests/snmp2_get.phpt]
    Function snmp2_getnext [ext/snmp/tests/snmp2_getnext.phpt]
    Function snmp2_real_walk [ext/snmp/tests/snmp2_real_walk.phpt]
    Function snmp2_set (without MIBs loading) [ext/snmp/tests/snmp2_set-nomib.phpt]
    Function snmp2_set [ext/snmp/tests/snmp2_set.phpt]
    Function snmp2_walk [ext/snmp/tests/snmp2_walk.phpt]
    SNMPv3 Support (errors) [ext/snmp/tests/snmp3-error.phpt]
    SNMPv3 Support [ext/snmp/tests/snmp3.phpt]
    Function snmp_getvalue [ext/snmp/tests/snmp_getvalue.phpt]
    Function snmp_read_mib [ext/snmp/tests/snmp_read_mib.phpt]
    Function snmpget [ext/snmp/tests/snmpget.phpt]
    Function snmpgetnext [ext/snmp/tests/snmpgetnext.phpt]
    Function snmprealwalk [ext/snmp/tests/snmprealwalk.phpt]
    Function snmpset (without MIBs loading) [ext/snmp/tests/snmpset-nomib.phpt]
    Function snmpset [ext/snmp/tests/snmpset.phpt]
    Function snmpwalk [ext/snmp/tests/snmpwalk.phpt]
    =====================================================================

    You may have found a problem in PHP.
    This report can be automatically sent to the PHP QA team at
    http://qa.php.net/reports and http://news.php.net/php.qa.reports
    This gives us a better understanding of PHP's behavior.
    If you don't want to send the report immediately you can choose
    option "s" to save it. You can then email it to qa-reports@lists.php.net later.
    Do you want to send this report now? [Yns]:

    Und dann verließen sie ihn... Was nun? Jemand nen Tipp wo ich ansetzen könnte?

    In meiner Testumgebung bekam ich nach einer Installation (make install) nur einen Fehler 500 mit der neuen php Version wenn ich eine Seite aufrufen wollte. :(

    Ich steh nun etwas aufm Schlauch...
     
  11. otto

    otto Bekanntes Mitglied Lizenzinhaber

    "Meine" Lösung für php 5.5.26 auf Ubuntu 12.04.5 LTS und Plesk 12.0.18/51



    Nach dem configure und make keine nennenswerten Probleme offenbarten und make install wie in der Anleitung durch lief, hatte man wie beschrieben Plesk noch die neue Version mitzuteilen und dann gabs zunächst mal MySQL Fehler. Aber immerhin schon mal keinen ERROR 500 mehr. ;)

    Schuld war die php.ini - ich hatte zwar wie in der Anleitung die Änderung für die MySQL Sockets gemacht, aber es wurde eben nicht die PHP.ini geladen, welche ich bearbeitet hatte. Ich hab die Werte dann schlicht im Plesk direkt dort mit eingegeben wo man die php Einstellungen der Domain ändern/anpassen kann. Das wars dann bisher und nun läuft endlich ein aktuelleres php 5.5.26 :) Mal sehen ob ich mir 5.6.x auch noch antuen möchte. Insgesamt hab ich 2,5 Stunden an dem Quark gesessen. Das nächste mal sollte es nicht länger als eine Stunde werden... ;)

    Edit: 5.4.38 hab ich mir bisher gekniffen, werde ich aber wohl auch noch ans laufen bringen, jetzt wo ich endlich weis wie.

    Interessant wird dann das erste Update der von Hand hinzugefügten PHP-Version - hat da jemand nen Tipp?
     
    Zuletzt bearbeitet: 6. Aug. 2015
  12. Maestro2k5

    Maestro2k5 Bekanntes Mitglied Lizenzinhaber

  13. otto

    otto Bekanntes Mitglied Lizenzinhaber

    Also mit der Anleitung, die du verlinkt hast, wird meiner Meinung nach die vorhandene PHP Version überschrieben! Das würde ich nicht unbedingt machen wollen. ;)

    Mit der von mir verlinkten, kannst du eine neuere Version zusätzlich installieren UND diese im Plesk 12.x registrieren so das diese dort für jede Domain getrennt zur freien Auswahl steht. Dies halte ich für den besseren, sichereren Weg. Auch wenn er der längere ist. :)
     
  14. Maestro2k5

    Maestro2k5 Bekanntes Mitglied Lizenzinhaber

    Ja, gut das wäre sicher schöner. Wobei mir eine PHP Version reicht. Aber jeder hat andere Anforderungen.