2016-06-23 12 views
0

Ich wurde von der Sysadmin gesagt, dass es unmöglich ist, die PHP-Version auf den Webservern an meinem Arbeitsplatz zu aktualisieren, weil sie "alt" sind.Hat PHP irgendwelche Hardware- oder Systemanforderungen?

Ist das wahr?

Hat PHP irgendwelche Hardware- oder Systemanforderungen?

Dank

+0

Ich bin mir ziemlich sicher, dass Sie diese Informationen mit Google finden können. – Rasclatt

+0

Nur aus Neugier, wie "alt"? Wie welches Betriebssystem und welche Version sprechen wir hier, wenn Sie teilen können? – drew010

Antwort

2

PHP offizielle Unterstützung für Windows-Versionen hat, sind sie here detailliert.

Auf Unix-Rechnern kann jeder Sysadmin PHP7 mit ausreichender Entschlossenheit auf den meisten Maschinen installieren. Meine Vermutung ist, dass Ihr Systemadministrator es vorzieht, bei der PHP-Version zu bleiben, die der bevorzugte Paketmanager bereitstellt. Zum Beispiel hat Debian 7 nur PHP 5.4 mit Standard-apt-get-Repositories.

2

PHP hat keine Hardwarebeschränkungen, die ich jemals erlebt habe, aber eine Sache, die Sie davon abhält, neuere Versionen von PHP auf älteren * nix-Systemen zu kompilieren, ist Software.

Moderne Versionen von PHP werden nicht auf älteren * nix-Systemen kompiliert, da sie nicht über die erforderlichen Tools zum Erstellen von PHP verfügen (ein moderner C-Compiler, semi-neuste Versionen von glibc, GNU make, Bison und vieles mehr) der PHP-Erweiterungen haben die Voraussetzungen für neuere Bibliotheksversionen, die mit den auf älteren Systemen installierten nicht kompatibel sind.

Das könnte sehr gut sein, warum sie das sagen. Ich habe versucht, PHP 5.4 auf RedHat 7.3 ohne viel Glück zu kompilieren, da all diese Systembibliotheken und Tools zum Kompilieren von Software zu alt sind. Mit der OpenSSL-Erweiterung haben alte Systeme oft nicht einmal die richtigen Header-Dateien mit Funktionsprototypen, die PHP während der Kompilierung erwartet.

Also ja, kompilieren PHP ist schwierig oder unmöglich auf einem älteren System (jemals versucht, neuere Versionen von libc auf alten Maschinen zu bauen? Es ist ein Albtraum!).

Zum Beispiel habe ich PHP 5.6.22 und begann auf Red Hat Linux zu kompilieren Release 7.3 (Valhalla) und nicht sehr weit war ...

Erster einfacher Fehler:

checking for zlib version >= 1.2.0.4... 1.1.4 
configure: error: libz version greater or equal to 1.2.0.4 required 

Das ist einfach genug, um selbst zu kompilieren, aber eine Reihe von anderen Bibliotheken für Erweiterungen, die ich wollte, sind nicht auf dem System installiert, und der Versuch, jedes zu kompilieren, könnte ein eigenes Kaninchenloch sein.

Also nahm ich diejenigen, die wir nicht beginnen hatte, konnte ./configure ganz gut, aber nicht zu weit in make ...

php-5.6.22/ext/openssl/openssl.c: In function `php_openssl_get_stream_from_ssl_handle': 
php-5.6.22/ext/openssl/openssl.c:581: warning: passing arg 1 of `SSL_get_ex_data' discards qualifiers from pointer target type 
php-5.6.22/ext/openssl/openssl.c: In function `php_openssl_get_evp_cipher_from_algo': 
php-5.6.22/ext/openssl/openssl.c:1092: warning: return makes pointer from integer without a cast 
php-5.6.22/ext/openssl/openssl.c:1095: warning: return makes pointer from integer without a cast 
php-5.6.22/ext/openssl/openssl.c:1098: warning: return makes pointer from integer without a cast 
php-5.6.22/ext/openssl/openssl.c: In function `openssl_x509v3_subjectAltName': 
php-5.6.22/ext/openssl/openssl.c:1874: `GENERAL_NAMES' undeclared (first use in this function) 
... 
php-5.6.22/ext/openssl/openssl.c: In function `zif_openssl_digest': 
php-5.6.22/ext/openssl/openssl.c:5112: void value not ignored as it ought to be 
make: *** [ext/openssl/openssl.lo] Error 1 

Also mit OpenSSL war es Spiel vorbei (Es ist übrigens Version 0.9.6b, so alt!). Ich könnte wahrscheinlich neuere OpenSSL wie ich es vorher ohne Probleme kompilieren, aber dieses 7.3-System ist auch etwas Besonderes. Wir haben uns viel Mühe gegeben, neuere Versionen von nicht unterstützter Software (libs & Compiler) in dieses System zu bringen, um es am Leben zu erhalten, aber bei älteren hatte ich viel weniger Glück.

Es kann also Tage dauern, bis neuere PHP auf älteren Systemen laufen und dies erfordert viel Erfahrung und Wissen darüber, wie Sie Bibliotheken außerhalb Ihres Bibliotheksweges erstellen und installieren (damit sie andere Dinge nicht stören) System) und dann die neuen Sachen, um dynamisch zu diesen zu verlinken).

+0

Vielen Dank für Ihre Antwort, ich verstehe, dass es möglicherweise unmöglich oder sehr hart und langwierig ist, neuere Versionen dieser Software aufgrund von Abhängigkeiten zu installieren. –

0

Dies sind die Mindestsystemanforderungen WampServer zum Herunterladen und Installieren: Betriebssystem: Windows XP (32 oder 64 Bit) HDD: 200 MB freier Speicherplatz. Speicher: 512 MB RAM. Voller Administratorzugriff.

Diese sind für die erste

danach in der Produktionsumgebung installieren Sie nicht eingeschränkt werden. PROC: 0 bis Sie das Menü anzeigen, alle Arbeiten werden von den beiden Diensten erledigt RAM: nur Dienste, so hängt es davon ab, wie viele Verbindung Apache verwalten muss (1 in einer lokalen Verwendung) HDD: Es hängt davon ab, wie viele Addons/Apps, die Sie installieren, sowie Größe und Datenbanken Ihrer Projekte.