Heim >Backend-Entwicklung >PHP7 >Einführung in den Prozess des Upgrades von ThinkPHP3.2.3 von PHP5 auf PHP7
Zunächst einmal: Unterstützt ThinkPHP3.2.3 PHP7 absolut?
Unter Windows wurde das vorherige Projekt in der Version Apache2.4.17+php5.x bereitgestellt. Aufgrund des Netzwerksicherheitsscans auf Kundenseite wurden viele Schwachstellen gefunden, darunter bis zu Hunderte von Hochrisikolücken in Apache und PHP In einigen Fällen, in denen eine dringende Reparatur erforderlich ist, wird die Website geschlossen.
Also habe ich den Softwarelieferanten kontaktiert, der versprochen hat, beim Upgrade zu kooperieren, aber am Ende das Upgrade nicht durchgeführt hat. Die Antwort war, dass ThinkPHP3.2.3 nicht in PHP7 bereitgestellt werden kann.
Also musste ich mich auf mich selbst verlassen, nachdem ich drei oder vier Tage lang herumgefummelt hatte. Jetzt werde ich den allgemeinen Prozess mit Ihnen teilen.
Empfohlen (kostenlos): PHP7
1. Aktualisieren Sie Apache, Download-Adresse http://httpd.apache.org/download.cgi, die heruntergeladene Version ist 2.4.33
Die wichtigste ist Die Konfigurationsdatei sieht wie folgt aus:
Apache lädt PHP-Unterstützung
PHPIniDir d:/GPS-LOCK/php/php.ini
LoadModule php7_module D:/GPS-LOCK/php/php7apache2_4.dll
Encountered Bei diesem Schritt sind viele Probleme aufgetreten. Apache kann nicht gestartet werden, wenn der PHPIniDir-Pfad aktiviert ist. Schließlich habe ich festgestellt, dass die Datei php.ini auf Multithreading verweist. Nach mehrmaligen Versuchen wurde das Problem gelöst.
2. PHP aktualisieren, Download-Adresse: https://windows.php.net/download/ Was hier heruntergeladen wird, ist 7.2.26,
Jetzt werden wir die erwarteten Probleme beim Upgrade von PHP7 zusammenfassen
1 Hier installiert werden Die kompilierte Version der VC++-Klassenbibliothek, die PHP7 entspricht, vc_redist.x64.exe, wird mit VC15 installiert Standard
3, Sie müssen Microsoft-Treiber für PHP für SQL Server herunterladen https://www.microsoft.com/en-us/download/details.aspx?id=20098. Ich habe Version 7.2 heruntergeladen
Ändern Sie die Speicherortdatei wie folgt
4. Für die php.ini-Datei in php7 lässt ext php_.dll weg. Derzeit müssen Sie die dekomprimierte Datei in das phpext-Verzeichnis kopieren Das System konnte unter PHP7 normal ausgeführt werden. Daher erfordert das Projekt, dass PHP pthreads unterstützt. Nach dem Hinzufügen von extension=pthreads zur php.ini-Datei kann Apache nicht mehr gestartet werden. Es stellt sich heraus, dass ptheads im CLI-Modus ausgeführt werden muss. Die Download-Adresse von ptheads lautet https://windows.php.net/downloads/pecl/releases/pthreads/
Entpacken Sie das Download-Paket
1. Platzieren Sie die Datei pthreadVC2.dll Datei im PHP-Stammverzeichnis
2. Kopieren Sie php_pthreads.dll in das PHPext-Verzeichnis.
Starten Sie Apache erneut und stellen Sie fest, dass es nicht gestartet werden kann. Es stellt sich heraus, dass ptheads im CLI-Modus ausgeführt werden muss . Meine Lösung besteht darin, zwei php.ini-Konfigurationen zu erstellen, eine für die Verwendung der php.ini-Datei und die andere für die Verwendung der php-cli.ini-Datei Diesmal ist der Upgrade-Pfad endlich abgeschlossen. Da der Autor nicht in einem PHP-Hauptfach geboren wurde, hat er viele Umwege in Kauf genommen, aber die Lücke wurde endlich behoben. Wenn auch alle auf dieses Problem stoßen, können Sie es gemeinsam kommunizieren und diskutieren.Das obige ist der detaillierte Inhalt vonEinführung in den Prozess des Upgrades von ThinkPHP3.2.3 von PHP5 auf PHP7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!