Beim Versuch, das Composer- Abhängigkeitsverwaltungstool unter Win7 / 64 + WampServer 2.2 über das Setup-Installationsprogramm zu installieren , wird die folgende Meldung angezeigt :
Die openssl-Erweiterung fehlt, wodurch die Sicherheit und Stabilität von Composer beeinträchtigt wird. Wenn möglich, sollten Sie es aktivieren oder PHP mit --with-openssl neu kompilieren
Also hier ist was ich getan habe ...
- Klicken Sie in meinem Wamp-Symbol in der Taskleiste auf
php > php extensions > php_openssl
- Dies zeigte, dass die Aufgabe abgeschlossen wurde, indem ein Häkchen neben der Erweiterung gesetzt wurde
- Ich habe dann WampServer neu gestartet
- Dann habe ich über das Wamp-Symbol in der Taskleiste
php > php.ini
auf openssl geklickt und gesucht, um zu überprüfen, ob es NICHT kommentiert wurde. Es war nicht. - Ich ging dann zurück zu Composer-Setup.exe und versuchte es erneut. Gleiche Warnmeldung : "openssl-Erweiterung fehlt"
- Da ich noch nie mit OpenSSL gearbeitet habe, bin ich mir nicht sicher, was eingestellt werden soll. Deshalb habe ich versucht, mit https zu einer meiner lokalen Websites zu navigieren. Es ging schief.
Was vermisse ich?
Bitte beraten.
php
wampserver
composer-php
Schläfer
quelle
quelle
Antworten:
WAMP verwendet verschiedene php.ini-Dateien in der CLI und für Apache. Wenn Sie php_openssl über die WAMP-Benutzeroberfläche aktivieren, aktivieren Sie es für Apache und nicht für die CLI. Sie müssen C: \ wamp \ bin \ php \ php-5.4.3 \ php.ini ändern, um es für die CLI zu aktivieren.
quelle
Zusätzlich zum Kommentieren der
;extension=php_openssl.dll
Zeilephp.ini
, die von allen anderen erwähnt wurde, müssen Sie auch sicherstellen, dass die;extension_dir = "ext"
Zeile auch nicht kommentiert ist. Entfernen Sie zum Kommentieren das vorangestellte Semikolon und speichern Sie es.Diese Zeile ist in Paketen wie WAMP und XAMPP möglicherweise bereits unkommentiert, befindet sich jedoch nicht in einem einfachen PHP-Download für Windows. Es lohnt sich daher, dies zu überprüfen. Außerdem müssen Sie die
php.ini
Datei erstellen , indem Sie eines der Beispiele wiephp.ini-development
in eine neue Datei kopieren und dann benennenphp.ini
. Nehmen Sie diese Änderungen dann dort vor.Um in Zukunft Tools wie PHP und Composer zu installieren, empfehle ich außerdem die Verwendung des Chocolatey-Paketmanagers. Dann ist es so einfach wie
choco install composer
. Natürlich müssen Sie die php.ini noch bearbeiten, bevor Sie Composer mit der choco-Methode installieren. In zukünftigen Windows-Versionen werden Paketverwaltungstools wie Chocolatey in Windows integriert , genauso wieapt-get
in Ubuntu. Spannende Zeiten für Entwickler!Vergessen Sie bei beiden Methoden nach der Installation von Composer nicht, das Terminal neu zu starten. Unabhängig davon, ob Sie die Eingabeaufforderung, Bash (Installation mit Git) oder Powershell verwenden, müssen Sie sie neu starten, bevor die aktualisierten Umgebungsvariablen funktionieren.
quelle
ext
Zeile unter Windows vergessen . Danke, für die Erinnerung.Ich hatte das gleiche Problem, obwohl openssl aktiviert war. Das Problem war, dass das Composer-Installationsprogramm diese Konfigurationsdatei betrachtete:
C: \ wamp \ bin \ php \ php5.4.3 \ php.ini
Aber die Konfigurationsdatei, die geladen wird, ist tatsächlich hier:
C: \ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini
Also musste ich es einfach in der ersten php.ini-Datei auskommentieren und das hat den Trick gemacht. So wurde WAMP standardmäßig auf meinem Computer installiert. Ich habe nichts geändert, also wird dies wahrscheinlich auch anderen passieren. Dies ist im Grunde das gleiche wie die Antwort von Augie Gardner oben, aber ich wollte nur darauf hinweisen, dass Sie möglicherweise zwei php.ini-Dateien haben.
quelle
Kommentar
;extension=php_openssl.dll
in beidenes wird klappen
quelle
Ich verwende EasyPhp (WAMP-Typ). Klicken Sie im EasyPHP-Symbol in der Taskleiste mit der rechten Maustaste und wählen Sie Konfiguration und dann PHP. Ich werde die
PHP.ini
Dateikonfiguration in einem Editor, Search-Find oder CTRL+ F im Editor für das Wort öffnen, dasOPENSSL
Sie finden werden.;extension=php_openssl.dll
Entfernen Sie einfach das; und dasextension=php_openssl.dll
ist aktiv.quelle
Sie müssen die Dateisuche "c: \ Programme \ wamp \ bin \ php \ php5.3.13 \ php.ini" bearbeiten nach :; extension = php_openssl.dll
Entfernen Sie das Semikolon am Anfang
Hinweis: Wenn das Speichern der Datei nicht funktioniert, müssen Sie sie als Administrator bearbeiten. (unter win7) Gehen Sie zum Startmenü, suchen Sie nach dem Editor, klicken Sie mit der rechten Maustaste auf den Editor und klicken Sie auf "Als Administrator ausführen".
Klicken Sie im Composer-Installationsfenster einfach auf "Zurück" (oder schließen Sie es und starten Sie es erneut), und es sollte funktionieren
quelle
geöffnete wamp / bin / apache / apache2.4.4 / bin / php config .. wamp / bin / php / php5.4.16 / php conf einstellungen, php-ini produktion, php-ini dev, phpForApache find extension = php_openssl.dll und unkommentieren durch Entfernen ;
quelle
Kurz und bündig, kommentieren Sie diese Zeile in
wamp/bin/php/php5.3.13
(oder einer anderen PHP-Version) aus:;extension=php_openssl.dll
(entfernen Sie die;
)Führen Sie nun die Befehlszeileninstallation von Composer aus. Sie werden keinen Fehler haben.
Gut zu gehen!
quelle
Sie sollten einen Symlink zu php.ini erstellen. Entschuldigung für den russischen Link .
quelle
Ja, Sie müssen die php.ini öffnen und das Semikolon entfernen, um:
entferne das ";" so und es wird funktionieren.
Viel Spaß beim Codieren.
quelle
Für die Installation von Composer haben die folgenden Schritte funktioniert: (WAMP Version 2.4 x64bit)
quelle
Alle diese Antworten sind gut, aber wenn Sie verstehen möchten, muss das Erweiterungsverzeichnis richtig sein, wenn alle nicht kommentierten Erweiterungen funktionieren sollen. Kann einen physischen oder relativen Pfad wie schreiben
oder
Es ist relativ zum Apache-Webserver httpd.exe (C: \ myStack \ apache \ bin). Wenn Sie jedoch möchten, dass es mit Composer oder etwas anderem funktioniert , benötigen Sie den physischen Pfad, da der CLI-Modus den Webserver nicht verwendet!
quelle
Ich stand vor dem gleichen Problem. Ich habe meinen PHP-Ordner von
php7_winxxxx
nur in PHP umbenannt und es hat gut funktioniert. Es sah so aus, als würde der Komponist den Speicherort des Moduls php_openssl überprüfenc:/php/ext
.Möglicherweise müssen Sie auch
c:/php
diePATH
Umgebungsvariable in hinzufügenquelle