Cảnh báo của nhà soạn nhạc: phần mở rộng openssl bị thiếu. Cách bật trong WAMP


132

Đang cố gắng cài đặt công cụ quản lý phụ thuộc Trình soạn thảo trên Win7 / 64 + WampServer 2.2 thông qua Trình cài đặt cài đặt và tôi nhận được thông báo sau:

Phần mở rộng openssl bị thiếu, điều này sẽ làm giảm tính bảo mật và tính ổn định của Trình soạn thảo. Nếu có thể, bạn nên kích hoạt nó hoặc biên dịch lại php với --with-openssl

Vì vậy, đây là những gì tôi đã làm ...

  1. Từ biểu tượng Wamp của tôi trong Khay, đã nhấp php > php extensions > php_openssl
  2. Điều này cho thấy nhiệm vụ đã được hoàn thành bằng cách đặt dấu kiểm bên cạnh tiện ích mở rộng
  3. Sau đó tôi khởi động lại WampServer
  4. Sau đó, từ biểu tượng Wamp trong khay, tôi đã nhấp php > php.inivà tìm kiếm openssl để xác minh nó KHÔNG được bình luận). Nó không phải là.
  5. Sau đó tôi đã quay lại Composer-Setup.exe và thử lại. Thông báo cảnh báo tương tự : "phần mở rộng openssl bị thiếu"
  6. Chưa bao giờ làm việc với OpenSSL, tôi không chắc chắn những gì được cho là được đặt, vì vậy tôi đã cố gắng duyệt đến một trong những trang web địa phương của mình bằng https. Nó đã thất bại.

Tôi đang thiếu gì?

Xin tư vấn.


Ồ Tôi vừa lên google để thử thêm thông tin và bài đăng này xuất hiện trong kết quả tìm kiếm. Đã sẵn sàng? Chết tiệt thật nhanh. : -}
ngủ

Bạn đã khởi động lại máy chủ web?
periklis

vâng, tôi đã khởi động lại máy chủ.
ngủ

không chắc bạn đã cố gắng mở rộng như thế nào với ssl nhưng điều này có thể giúp ích: phpjoel.com/2011/04/07/ . Nếu điều đó không giúp ích cho bạn, bạn luôn có thể thử phương pháp cài đặt lại sự cố cũ tốt sau khi sao lưu DB và Tệp.
Cameeob2003

Tôi vừa nâng cấp phiên bản của mình trên WampServer lên bản mới nhất. Cùng một tin nhắn. Tôi chỉ tiếp tục cài đặt. Cho đến nay, không có lỗi đáng chú ý. Kỳ dị.
ngủ

Câu trả lời:


316

WAMP sử dụng các tệp php.ini khác nhau trong CLI và cho Apache. khi bạn kích hoạt php_openssl thông qua giao diện người dùng WAMP, bạn kích hoạt nó cho Apache, không phải cho CLI. Bạn cần sửa đổi C: \ wamp \ bin \ php \ php-5.4.3 \ php.ini để kích hoạt nó cho CLI.


2
bạn đã cứu tình yêu của tôi mà tôi cảm thấy đến laravel ... tại sao địa ngục không rời khỏi cài đặt như phiên bản cũ :)
Tom

1
quái vật đã đưa tôi đến đây
tomexsans

1
Tôi đang sử dụng uwamp nơi tôi có thể tìm thấy tệp ini.
Sujeet Kumar

Câu trả lời cũng hoạt động với EasyPHP (nhấp chuột phải vào biểu tượng EasyPHP, chọn Cấu hình | PHP, mở php.ini trong Notepad, tìm kiếm openssl, bỏ ghi chú dòng)
stifin

Tôi nên làm gì cho xampp? .. Tôi đã gặp lỗi như Tin nhắn này không thể gửi được. Lỗi Mailer: Thiếu tiện ích mở rộng: openssl ,,,
chiếc

27

Ngoài việc không chú ý đến ;extension=php_openssl.dlldòng php.inimà mọi người khác đã đề cập, bạn cũng phải đảm bảo ;extension_dir = "ext"dòng này cũng không bị lỗi. Để bỏ ghi chú, hãy xóa dấu chấm phẩy có tiền tố và lưu lại.

Dòng đó có thể đã không bị thiếu trong các gói như WAMP và XAMPP, nhưng nó không phải là một bản tải xuống PHP đơn giản cho Windows, vì vậy nó đáng để xác minh. Ngoài ra, bạn phải tạo php.initệp bằng cách sao chép một trong các ví dụ, như php.ini-developmentvào một tệp mới và sau đó đặt tên cho nó php.ini. Sau đó thực hiện những thay đổi đó.

Ngoài ra, trong tương lai, để cài đặt các công cụ như PHP và Trình soạn thảo, tôi khuyên bạn nên sử dụng trình quản lý gói Chocolatey. Sau đó, nó đơn giản như choco install composer. Tất nhiên, bạn vẫn cần chỉnh sửa php.ini trước khi cài đặt Trình soạn thảo với phương thức choco. Trong các phiên bản tương lai của Windows, các công cụ quản lý gói như Chocolatey sẽ được đưa vào Windows , tương tự như apt-gettrong Ubuntu. Thời gian thú vị phía trước cho các nhà phát triển!

Với bất kỳ phương pháp nào, sau khi cài đặt Trình soạn thảo, đừng quên khởi động lại thiết bị đầu cuối của bạn. Cho dù bạn đang sử dụng Command Prompt, Bash (cài đặt bằng Git) hoặc Powershell, bạn sẽ cần khởi động lại nó trước khi các biến môi trường được cập nhật hoạt động.


4
Đây là câu trả lời chính xác nếu bạn đang cố gắng cài đặt trình soạn thảo trên Windows 10 và đã làm theo hướng dẫn
cướp

Hoàn toàn .. Đây là sự thật .. Tôi biết điều này, nhưng quên extdòng đó trên Windows. Cảm ơn vì đã nhắc nhở.
WM

16

Tôi đã có cùng một vấn đề mặc dù openssl đã được kích hoạt. Vấn đề là trình cài đặt Trình soạn thảo đã xem tệp cấu hình này:

C: \ wamp \ bin \ php \ php5.4.3 \ php.ini

Nhưng tập tin cấu hình được tải thực sự ở đây:

C: \ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini

Vì vậy, tôi chỉ cần bỏ ghi chú trong tệp php.ini đầu tiên và điều đó đã tạo ra mánh khóe. Đây là cách WAMP được cài đặt trên máy của tôi theo mặc định. Tôi đã không thay đổi bất cứ điều gì, vì vậy điều này có thể cũng sẽ xảy ra với những người khác. Điều này về cơ bản giống như câu trả lời của Augie Gardner ở trên, nhưng tôi chỉ muốn chỉ ra rằng bạn có thể có hai tệp php.ini.


Đường dẫn Bydefault được cung cấp trong khi cài đặt bị sai, Chỉ ra php.exe đã giải quyết vấn đề, Cảm ơn.
Sandesh Damkondwar

12

thiếu sót ;extension=php_openssl.dlltrong cả hai

wamp\bin\php\php5.4.12\php.ini
wamp\bin\apache\Apache2.4.4\bin\php.ini

nó sẽ làm việc


Tôi đang sử dụng xampp .. vì vậy tôi đã chỉnh sửa 2 tệp có tên là c / php / php.ini và c / apache / bin / php.ini .. đã xóa dấu chấm phẩy trong này; extension = php_openssl.dll .. nhưng vẫn giữ nguyên lỗi như Lỗi Mailer này: Thiếu tiện ích mở rộng: openssl ..
chiếc

@saina bạn đã khởi động lại máy chủ của bạn? Đồng thời chạy phpinfo () để kiểm tra vị trí tệp cấu hình.
Ivanka Todorova

5

C: \ laravel-master> composer created-project laravel / laravel Cài đặt laravel / laravel (v4.0.6) - Cài đặt laravel / laravel (v4.0.6) [RuntimeException] Bạn phải bật tiện ích mở rộng openssl để tải xuống tệp qua https

Tôi đang sử dụng EasyPhp (loại WAMP). Trong Biểu tượng EasyPHP trên thanh tác vụ, nhấp chuột phải và chọn cấu hình, sau đó chọn PHP. Tôi sẽ mở PHP.inicấu hình tệp trong Notepad, search-find hoặc CTRL+ F trong notepad cho từ OPENSSLmà bạn sẽ tìm thấy ;extension=php_openssl.dllchỉ cần loại bỏ; và extension=php_openssl.dlllà hoạt động.

C: \ laravel-master> composer created-project laravel / laravel Cài đặt laravel / laravel (v4.0.6) - Cài đặt laravel / laravel (v4.0.6) Tải xuống: Dự án được tạo 100% trong C: \ laravel-master \ laravel Đang tải kho lưu trữ với thông tin gói Cài đặt phụ thuộc (bao gồm cả yêu cầu-dev)


Tôi biết đó là lạc đề, nhưng cách bạn đã cài đặt trình soạn thảo với EasyPhp. Tôi chỉ gặp lỗi và phải cài đặt lại tất cả.
HenryW

2

bạn cần chỉnh sửa tìm kiếm tệp "c: \ Program Files \ wamp \ bin \ php \ php5.3.13 \ php.ini" cho :; extension = php_openssl.dll

loại bỏ dấu chấm phẩy lúc đầu

lưu ý: nếu lưu tệp không hoạt động thì bạn cần chỉnh sửa nó với tư cách quản trị viên. (trên win7) vào menu start, tìm kiếm notepad, nhấp chuột phải vào notepad, nhấp vào "Run As Administrator"

trong cửa sổ cài đặt trình soạn thảo, chỉ cần nhấp lại sau đó tiếp theo (hoặc đóng lại và bắt đầu lại) và nó sẽ hoạt động


2

đã mở cài đặt wamp / bin / apache / apache2.4.4 / bin / php .. wamp / bin / php / php5.4.16 / php conf, sản xuất php-ini, php-ini dev, phpForApache find extension = php_openssl.dll và uncomment bằng cách loại bỏ ;



1

Ngắn gọn và ngọt ngào, bỏ ghi chú dòng này trong wamp/bin/php/php5.3.13(hoặc bất kỳ phiên bản php nào):
;extension=php_openssl.dll (loại bỏ ;)
Bây giờ hãy chạy cài đặt dòng lệnh của Trình soạn thảo. Bạn sẽ không có lỗi.
Tốt để đi!



1

Có, bạn phải mở php.ini và xóa dấu chấm phẩy để:

;extension=php_openssl.dll

gỡ bỏ ";" như thế này và nó sẽ làm việc

extension=php_openssl.dll

Chúc mừng mã hóa.


0

Để cài đặt Trình soạn thảo bên dưới, các bước đã hoạt động với tôi: (WAMP phiên bản 2.4 x64bit)

edit ->
**C:\wamp\bin\php\php5.4.12\php.ini**
;;uncomment below line or remove the semicolons ';'
extension=php_openssl.dll

**C:\wamp\bin\apache\Apache2.4.4\bin\php.ini**

extension=php_openssl.dll

0

Tất cả những câu trả lời đều tốt, nhưng trên thực tế, nếu bạn muốn hiểu, thư mục tiện ích mở rộng cần phải đúng nếu bạn muốn tất cả các tiện ích mở rộng không bị lỗi của bạn hoạt động. Có thể viết một đường dẫn vật lý hoặc tương đối như

extension_dir = "C:/myStack/php/ext"

hoặc là

extension_dir = "../../php/ext"

Nó liên quan đến máy chủ web Apache httpd.exe (C: \ myStack \ apache \ bin) Nhưng nếu bạn muốn nó hoạt động với Trình soạn thảo hoặc bất cứ điều gì bạn cần đường dẫn vật lý vì chế độ cli không sử dụng máy chủ web!


0

Tôi đã phải đối mặt với cùng một vấn đề. Tôi đã đổi tên thư mục php của mình từ php7_winxxxxthành php và nó hoạt động tốt. Có vẻ như nhà soạn nhạc đang kiểm tra vị trí của mô-đun php_openssl c:/php/ext.

Bạn cũng có thể cần phải thêm c:/phpvào PATHtrong biến môi trường

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.