Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP Version

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP Version

    Hallo Leute

    ich habe unter CentOS 5.4 eine neue Version von PHP installiert.

    Alte (die standardmässig bei CentOS dabei war): 5.1.6
    Die neue ist: 5.3.2

    Problem ist, php -v in der CLI gibt mir 5.3.2 aus, das ist richtig.
    Aber wenn ich eine index.php mit phpinfo() mache, da wird immer noch die alte ausgegeben. Apache wurde neu gestartet.

    Kann mir bitte da jemand helfen, wie ich auch mit phpinfo() die neue Version "aktiviere" ?

  • #2
    die frage ist wie du php installiert hast und ob du nur cli installiert hast und ob du auch das apache-modul ersetzt hast bzw. in deinem apache-configs den pfad zum modul auf das neue (falls sich name der datei geändert hat) geändert hast.
    [URL="http://www.robo47.net"]robo47.net[/URL] - Blog, Codeschnipsel und mehr
    | :arrow: [URL="http://www.robo47.net/blog/192-Caching-Libraries-and-Opcode-Caches-in-php-An-Overview"]Caching-Klassen und Opcode Caches in php[/URL] | :arrow: [URL="http://www.robo47.net/components"]Robo47 Components - PHP Library extending Zend Framework[/URL]

    Kommentar


    • #3
      @robo,

      php wurde einfach billig kompiliert mit:
      Code:
      cd php-5.3.2
      ./configure
      make
      make test
      make install
      Code:
      php --version
      gibt aus:

      PHP 5.3.2 (cli) (built: May 21 2010 16:47:23)
      Copyright (c) 1997-2010 The PHP Group
      Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies


      Code:
      php -r 'phpinfo();' | grep 5.
      gibt auch richtige Version aus: PHP Version => 5.3.2

      Also es scheint irgendwie, dass nur Apache/Webseite die neue Version nicht erkennt.

      Hat einer eine Idee ?

      Kommentar


      • #4
        robo47 hats doch schon geschrieben: Du musst dem Apache mitteilen, welche Version (von WO!) er laden soll!
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          @lstegelitz,

          würde ich gerne, nur da reichen meine CentOS Kentnisse leider nicht aus.
          Kannst du mir vielleicht ansatzweise sagen wo ich bei dem Apache nachtragen muss ?
          Und woher soll ich wissen, wohin neue PHP mit make install installiert wurde ?

          Kommentar


          • #6
            Ich weis ja nicht wie das standard-layout von Dateien unter CentOS aussieht, aber jede Distribution hat ihr eigenens Layout wo welche Dateien zu liegen haben und das stimmt nicht unbedingt mit dem über ein wie und wo php seinen Kram standardmäßig ablegt.

            Noch dazu kompilierst du so kein apache-modul für php, ausserdem die frage wie dein apache php nutzt, via modul ? cgi ? ... etc.

            Gibt es nicht vielleicht fertige pakete für deine Distribution oder ein Repository wo 5.3.x gepflegt wird ?

            Ansonsten mal googlen nach fertigen rpms/repositories ?
            [URL="http://www.robo47.net"]robo47.net[/URL] - Blog, Codeschnipsel und mehr
            | :arrow: [URL="http://www.robo47.net/blog/192-Caching-Libraries-and-Opcode-Caches-in-php-An-Overview"]Caching-Klassen und Opcode Caches in php[/URL] | :arrow: [URL="http://www.robo47.net/components"]Robo47 Components - PHP Library extending Zend Framework[/URL]

            Kommentar


            • #7
              Kenn mich mit CentOS nicht aus, aber apache/conf/httpd.conf sollte die Datei sein die robo47 meint (aus dem Kopf geschrieben, hab hier keinen localhost zur Verfügung).

              Kommentar


              • #8
                also ich fand die Apache Configuration in /etc/httpd/conf/httpd.conf

                Hier der komplette Inhalt (sorry für soviel, aber lieber zu viel als zu wenig):

                Code:
                # This is the main Apache server configuration file.
                
                ### Section 1: Global Environment
                
                ServerTokens OS
                ServerRoot "/etc/httpd"
                PidFile run/httpd.pid
                Timeout 120
                KeepAlive Off
                MaxKeepAliveRequests 100
                KeepAliveTimeout 15
                
                <IfModule prefork.c>
                StartServers       8
                MinSpareServers    5
                MaxSpareServers   20
                ServerLimit      256
                MaxClients       256
                MaxRequestsPerChild  4000
                </IfModule>
                
                <IfModule worker.c>
                StartServers         2
                MaxClients         150
                MinSpareThreads     25
                MaxSpareThreads     75 
                ThreadsPerChild     25
                MaxRequestsPerChild  0
                </IfModule>
                
                Listen 80
                
                LoadModule auth_basic_module modules/mod_auth_basic.so
                LoadModule auth_digest_module modules/mod_auth_digest.so
                LoadModule authn_file_module modules/mod_authn_file.so
                LoadModule authn_alias_module modules/mod_authn_alias.so
                LoadModule authn_anon_module modules/mod_authn_anon.so
                LoadModule authn_dbm_module modules/mod_authn_dbm.so
                LoadModule authn_default_module modules/mod_authn_default.so
                LoadModule authz_host_module modules/mod_authz_host.so
                LoadModule authz_user_module modules/mod_authz_user.so
                LoadModule authz_owner_module modules/mod_authz_owner.so
                LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
                LoadModule authz_dbm_module modules/mod_authz_dbm.so
                LoadModule authz_default_module modules/mod_authz_default.so
                LoadModule ldap_module modules/mod_ldap.so
                LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
                LoadModule include_module modules/mod_include.so
                LoadModule log_config_module modules/mod_log_config.so
                LoadModule logio_module modules/mod_logio.so
                LoadModule env_module modules/mod_env.so
                LoadModule ext_filter_module modules/mod_ext_filter.so
                LoadModule mime_magic_module modules/mod_mime_magic.so
                LoadModule expires_module modules/mod_expires.so
                LoadModule deflate_module modules/mod_deflate.so
                LoadModule headers_module modules/mod_headers.so
                LoadModule usertrack_module modules/mod_usertrack.so
                LoadModule setenvif_module modules/mod_setenvif.so
                LoadModule mime_module modules/mod_mime.so
                LoadModule dav_module modules/mod_dav.so
                LoadModule status_module modules/mod_status.so
                LoadModule autoindex_module modules/mod_autoindex.so
                LoadModule info_module modules/mod_info.so
                LoadModule dav_fs_module modules/mod_dav_fs.so
                LoadModule vhost_alias_module modules/mod_vhost_alias.so
                LoadModule negotiation_module modules/mod_negotiation.so
                LoadModule dir_module modules/mod_dir.so
                LoadModule actions_module modules/mod_actions.so
                LoadModule speling_module modules/mod_speling.so
                LoadModule userdir_module modules/mod_userdir.so
                LoadModule alias_module modules/mod_alias.so
                LoadModule rewrite_module modules/mod_rewrite.so
                LoadModule proxy_module modules/mod_proxy.so
                LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
                LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
                LoadModule proxy_http_module modules/mod_proxy_http.so
                LoadModule proxy_connect_module modules/mod_proxy_connect.so
                LoadModule cache_module modules/mod_cache.so
                LoadModule suexec_module modules/mod_suexec.so
                LoadModule disk_cache_module modules/mod_disk_cache.so
                LoadModule file_cache_module modules/mod_file_cache.so
                LoadModule mem_cache_module modules/mod_mem_cache.so
                LoadModule cgi_module modules/mod_cgi.so
                LoadModule version_module modules/mod_version.so
                
                
                Include conf.d/*.conf
                
                User apache
                Group apache
                
                
                ### Section 2: 'Main' server configuration
                
                ServerAdmin root@localhost
                UseCanonicalName Off
                DocumentRoot "/var/www/html"
                
                <Directory />
                    Options FollowSymLinks
                    AllowOverride None
                </Directory>
                
                <Directory "/var/www/html">
                    Options Indexes FollowSymLinks
                    AllowOverride None
                    Order allow,deny
                    Allow from all
                </Directory>
                
                <IfModule mod_userdir.c>
                    UserDir disable
                </IfModule>
                
                DirectoryIndex index.html index.html.var
                AccessFileName .htaccess
                
                <Files ~ "^\.ht">
                    Order allow,deny
                    Deny from all
                </Files>
                
                TypesConfig /etc/mime.types
                DefaultType text/plain
                
                <IfModule mod_mime_magic.c>
                    MIMEMagicFile conf/magic
                </IfModule>
                
                HostnameLookups Off
                ErrorLog logs/error_log
                LogLevel warn
                
                LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
                LogFormat "%h %l %u %t \"%r\" %>s %b" common
                LogFormat "%{Referer}i -> %U" referer
                LogFormat "%{User-agent}i" agent
                
                CustomLog logs/access_log combined
                ServerSignature On
                
                Alias /icons/ "/var/www/icons/"
                
                <Directory "/var/www/icons">
                    Options Indexes MultiViews
                    AllowOverride None
                    Order allow,deny
                    Allow from all
                </Directory>
                
                <IfModule mod_dav_fs.c>
                    # Location of the WebDAV lock database.
                    DAVLockDB /var/lib/dav/lockdb
                </IfModule>
                
                ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
                
                <Directory "/var/www/cgi-bin">
                    AllowOverride None
                    Options None
                    Order allow,deny
                    Allow from all
                </Directory>
                
                AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
                
                AddIconByType (TXT,/icons/text.gif) text/*
                AddIconByType (IMG,/icons/image2.gif) image/*
                AddIconByType (SND,/icons/sound2.gif) audio/*
                AddIconByType (VID,/icons/movie.gif) video/*
                
                AddIcon /icons/binary.gif .bin .exe
                AddIcon /icons/binhex.gif .hqx
                AddIcon /icons/tar.gif .tar
                AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
                AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
                AddIcon /icons/a.gif .ps .ai .eps
                AddIcon /icons/layout.gif .html .shtml .htm .pdf
                AddIcon /icons/text.gif .txt
                AddIcon /icons/c.gif .c
                AddIcon /icons/p.gif .pl .py
                AddIcon /icons/f.gif .for
                AddIcon /icons/dvi.gif .dvi
                AddIcon /icons/uuencoded.gif .uu
                AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
                AddIcon /icons/tex.gif .tex
                AddIcon /icons/bomb.gif core
                
                AddIcon /icons/back.gif ..
                AddIcon /icons/hand.right.gif README
                AddIcon /icons/folder.gif ^^DIRECTORY^^
                AddIcon /icons/blank.gif ^^BLANKICON^^
                
                DefaultIcon /icons/unknown.gif
                
                ReadmeName README.html
                HeaderName HEADER.html
                
                IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
                
                AddLanguage ca .ca
                AddLanguage cs .cz .cs
                AddLanguage da .dk
                AddLanguage de .de
                AddLanguage el .el
                AddLanguage en .en
                AddLanguage eo .eo
                AddLanguage es .es
                AddLanguage et .et
                AddLanguage fr .fr
                AddLanguage he .he
                AddLanguage hr .hr
                AddLanguage it .it
                AddLanguage ja .ja
                AddLanguage ko .ko
                AddLanguage ltz .ltz
                AddLanguage nl .nl
                AddLanguage nn .nn
                AddLanguage no .no
                AddLanguage pl .po
                AddLanguage pt .pt
                AddLanguage pt-BR .pt-br
                AddLanguage ru .ru
                AddLanguage sv .sv
                AddLanguage zh-CN .zh-cn
                AddLanguage zh-TW .zh-tw
                
                LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
                
                ForceLanguagePriority Prefer Fallback
                
                AddDefaultCharset UTF-8
                
                AddType application/x-compress .Z
                AddType application/x-gzip .gz .tgz
                
                AddHandler type-map var
                
                AddType text/html .shtml
                AddOutputFilter INCLUDES .shtml
                
                Alias /error/ "/var/www/error/"
                
                <IfModule mod_negotiation.c>
                <IfModule mod_include.c>
                    <Directory "/var/www/error">
                        AllowOverride None
                        Options IncludesNoExec
                        AddOutputFilter Includes html
                        AddHandler type-map var
                        Order allow,deny
                        Allow from all
                        LanguagePriority en es de fr
                        ForceLanguagePriority Prefer Fallback
                    </Directory>
                </IfModule>
                </IfModule>
                
                BrowserMatch "Mozilla/2" nokeepalive
                BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
                BrowserMatch "RealPlayer 4\.0" force-response-1.0
                BrowserMatch "Java/1\.0" force-response-1.0
                BrowserMatch "JDK/1\.0" force-response-1.0
                
                BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
                BrowserMatch "MS FrontPage" redirect-carefully
                BrowserMatch "^WebDrive" redirect-carefully
                BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
                BrowserMatch "^gnome-vfs/1.0" redirect-carefully
                BrowserMatch "^XML Spy" redirect-carefully
                BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
                Finde leider nicht wo und vorallem was ich da eintragen muss, ich weiss ja immer noch nicht, was "make install" da alles gemacht hat und wohin die neue Version installiert worden ist.

                Kommentar


                • #9
                  Code:
                  Include conf.d/*.conf
                  Und nun durchsuch noch das Unterverzeichnis "conf.d" nach "*.conf" Dateien und schau dir jede einzelne an (sie werden alle includet).

                  Irgendwo dort wird eine Modul für den Apache geladen (mod_php.so), ähnlich wie hier das Cachemodul:
                  Code:
                  LoadModule cache_module modules/mod_cache.so
                  Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                  Kommentar


                  • #10
                    Wenn du PHP per yum installierst, ist das Apache-Modul, soweit ich weiß, direkt dabei. Wenn du PHP aber selbst kompilierst, musst du es noch mitkompilieren:
                    Code:
                    ./configure --with-apxs2[=FILE]
                    FILE ist optional, sollte aber angegeben werden, damit das Modul nicht irgendwo landet. Normalerweise ist der Pfad /usr/sbin/apxs2.
                    Solltest du einen Apache 1.x einsetzen (was ich nicht hoffe) müsstest du entsprechend die 2 weglassen.
                    Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

                    Kommentar


                    • #11
                      Zitat von lstegelitz Beitrag anzeigen
                      Code:
                      Include conf.d/*.conf
                      Und nun durchsuch noch das Unterverzeichnis "conf.d" nach "*.conf" Dateien und schau dir jede einzelne an (sie werden alle includet).

                      Irgendwo dort wird eine Modul für den Apache geladen (mod_php.so), ähnlich wie hier das Cachemodul:
                      Code:
                      LoadModule cache_module modules/mod_cache.so
                      meinst du:
                      LoadModule php5_module modules/libphp5.so
                      in der ./conf.d/php.conf

                      Das Problem ist ja, nicht ob der die Module lädt, sondern wieso die falsche Version ? Und wie kann ich die richtige laden (dazu noch wissen wo und welche die richtige sind) ?

                      Kommentar


                      • #12
                        Zitat von Manko10 Beitrag anzeigen
                        Wenn du PHP per yum installierst, ist das Apache-Modul, soweit ich weiß, direkt dabei. Wenn du PHP aber selbst kompilierst, musst du es noch mitkompilieren:
                        Code:
                        ./configure --with-apxs2[=FILE]
                        FILE ist optional, sollte aber angegeben werden, damit das Modul nicht irgendwo landet. Normalerweise ist der Pfad /usr/sbin/apxs2.
                        Solltest du einen Apache 1.x einsetzen (was ich nicht hoffe) müsstest du entsprechend die 2 weglassen.
                        Das ist wahrscheinlich das was ich (mein Kollege) falsch gemacht habe,
                        ./configure wurde ohne Parametern aufgerufen, das heisst ohne apxs2 (aktueller Apache Modul).
                        Ist es nicht mittlerweile nicht automatisch (ohne Parameter) dabei und man muss es immer beim configure eingeben ?

                        2. Frage:
                        alte Konfiguration von laufendem PHP/Apache war (aus alter phpinfo entnommen):
                        Code:
                        	 './configure' '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-libdir=lib64' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--with-pic' '--disable-rpath' '--without-pear' '--with-bz2' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png' '--with-pspell' '--with-expat-dir=/usr' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-track-vars' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-kerberos' '--enable-ucd-snmp-hack' '--with-unixODBC=shared,/usr' '--enable-memory-limit' '--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--with-mime-magic=/usr/share/file/magic.mime' '--without-sqlite' '--with-libxml-dir=/usr' '--with-xml' '--with-system-tzdata' '--with-apxs2=/usr/sbin/apxs' '--without-mysql' '--without-gd' '--without-odbc' '--disable-dom' '--disable-dba' '--without-unixODBC' '--disable-pdo' '--disable-xmlreader' '--disable-xmlwriter'
                        kann ich also neue PHP Version nochmal neu kompilieren mit
                        Code:
                        ./configure ...... (Parameter von oben)
                        make
                        make install
                        und es sollte dann ohne Probleme alles richtig übernehmen auch alle Verzeichnisse ?
                        Oder soll ich alte Version von PHP zuerst irgnedwie löschen ?

                        Kommentar


                        • #13



                          Schuh 1 : Konfiguration & Kompilation einer neue PHP Version

                          Schuh 2 : Konfiguration Apache

                          Schuh 1 hat mit Schuh 2 erstmal garnix zu schaffen...
                          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                          Kommentar


                          • #14
                            Sollte funktionieren, ja. Ein ohne Configure-Parameter kompiliertes PHP ist eh sehr jungfräulich. Außer dem PHP-Kern ist dann nichts dabei und das macht beim Programmieren wirklich keinen Spaß. Selbst der billigste Freehoster gibt den einen oder anderen Parameter an.
                            Es lohnt sich auch immer, vorher erst einmal ein ./configure --help auszuführen, um zu sehen, welche Parameter überhaupt zur Verfügung stehen.
                            Ich vermute, es wird das falsche Modul genommen, weil die neue Installation die alte überschreibt, allerdings kein PHP-Modul kompiliert wurde, das das alte überschreiben könnte, sodass das alte Modul erhalten bleibt.
                            Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

                            Kommentar


                            • #15
                              Zitat von Manko10 Beitrag anzeigen
                              Sollte funktionieren, ja. Ein ohne Configure-Parameter kompiliertes PHP ist eh sehr jungfräulich. Außer dem PHP-Kern ist dann nichts dabei und das macht beim Programmieren wirklich keinen Spaß. Selbst der billigste Freehoster gibt den einen oder anderen Parameter an.
                              Es lohnt sich auch immer, vorher erst einmal ein ./configure --help auszuführen, um zu sehen, welche Parameter überhaupt zur Verfügung stehen.
                              Ich vermute, es wird das falsche Modul genommen, weil die neue Installation die alte überschreibt, allerdings kein PHP-Modul kompiliert wurde, das das alte überschreiben könnte, sodass das alte Modul erhalten bleibt.
                              Hmm, irgendwas verwirrt mich gerade aber noch:

                              erstmal, wenn ich meine phpinfo() aufrufe (alte Version, die jetzt immer noch angezeigt wird), stehen da bei ./configure z.B. parameter wie;
                              '--disable-pdo' '--without-mysql' ...
                              aber wenn ich die phpinfo dann weiter unten schaue, stehen da in der Tabelle:
                              Code:
                              PDO support	enabled
                              PDO drivers 	mysql, pgsql, sqlite
                              wie kann das sein ?
                              Hier die Kopie (weil der Server zur Aussenwelt blockiert ist) von phpinfo:
                              PhpInfo Link

                              Und zweite Geschichte noch,
                              habe gerade nochmal versucht die aktuelle Version von PHP mit den config Parametern da oben zu kompilieren, beim ./configure kommen schon einige Fehler:
                              Code:
                              ./configure: line 6265: /usr/sbin/apxs: No such file or directory
                              configure: error: Aborting
                              Wie kann das sein ? Wenn die Parametern bei der alten Version von PHP so drin stehen und ich mit gleichen Parametern neu konfigurieren will, dann müssen die doch stimmen (und es gibt keine /usr/sbin/apxs).

                              Kommentar

                              Lädt...
                              X