Hướng dẫn curl php ignore ssl - curl php bỏ qua ssl

Vì một số lý do, tôi không thể sử dụng Curl với HTTPS. Mọi thứ đều hoạt động tốt cho đến khi tôi chạy nâng cấp các thư viện Curl. Bây giờ tôi đang trải qua phản hồi này khi cố gắng thực hiện các yêu cầu Curl: Vấn đề với chứng chỉ SSL CA (đường dẫn? Quyền truy cập?Problem with the SSL CA cert (path? access rights?)

Các đề xuất sau đây được đăng ở đây về các vấn đề liên quan tôi đã cố gắng làm như sau:

  • Tắt xác minh cho máy chủ và ngang hàng

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);
    
  • Bật CURLOPT_SSL_VERIFYPEER và trỏ đến cacert.pem được tải xuống từ http://curl.haxx.se/docs/caextract.html

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
  • Tôi cũng đã cố gắng làm điều tương tự với positivessl.ca-bundle được cung cấp dưới dạng chứng chỉ CA Bundle cho máy chủ mà tôi đang cố gắng kết nối.

  • Chỉnh sửa cài đặt PHP INI với curl.cainfo=cacert.pem (tệp trong cùng thư mục và có thể truy cập bởi Apache)

  • Đổi tên

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
    0 thành
    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
    1

Thật không may, không có điều nào ở trên có thể giải quyết vấn đề của tôi và tôi liên tục gặp vấn đề với thông báo chứng chỉ SSL CA (đường dẫn?)

Và tôi không cần xác minh này ngay từ đầu (tôi nhận thức được các vấn đề bảo mật).

Có ai có bất kỳ đề xuất khác không?

CẬP NHẬT

Sau khi cập nhật các thư viện mới nhất và khởi động lại toàn bộ hộp, không chỉ Apache mà tôi đã làm tất cả dường như đang hoạt động trở lại !!!

Gustavohenke

40.1K13 Huy hiệu vàng117 Huy hiệu bạc124 Huy hiệu đồng13 gold badges117 silver badges124 bronze badges

hỏi ngày 28 tháng 2 năm 2013 lúc 12:41Feb 28, 2013 at 12:41

6

Theo tài liệu: Để xác minh chứng chỉ máy chủ hoặc ngang hàng, bạn cần chỉ định các chứng chỉ thay thế với tùy chọn

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
2 hoặc thư mục chứng chỉ có thể được chỉ định với tùy chọn
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
3.

Cũng nhìn vào

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
4

  • 1 Để kiểm tra sự tồn tại của một tên chung trong chứng chỉ ngang hàng SSL.
  • 2 Để kiểm tra sự tồn tại của một tên chung và cũng xác minh rằng nó phù hợp với tên máy chủ được cung cấp.

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

Hướng dẫn curl php ignore ssl - curl php bỏ qua ssl

Hassaan

6.8585 huy hiệu vàng29 Huy hiệu bạc48 Huy hiệu đồng5 gold badges29 silver badges48 bronze badges

Đã trả lời ngày 6 tháng 3 năm 2013 lúc 1:10Mar 6, 2013 at 1:10

Cỏ ba láclover

4.6601 Huy hiệu vàng17 Huy hiệu bạc26 Huy hiệu đồng1 gold badge17 silver badges26 bronze badges

3

Chúng tôi đã có cùng một vấn đề trên máy CentOS7. Vô hiệu hóa

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
5
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
6 không giải quyết vấn đề, chúng tôi không có lỗi Curl nữa nhưng phản hồi vẫn không hợp lệ. Thực hiện
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
7 với cùng một liên kết với Curl cũng đang thực hiện cũng dẫn đến lỗi chứng chỉ.

-> Giải pháp của chúng tôi cũng là khởi động lại VPS, điều này đã giải quyết nó và chúng tôi đã có thể hoàn thành yêu cầu một lần nữa.

Đối với chúng tôi, đây dường như là một vấn đề tham nhũng bộ nhớ. Khởi động lại các VP đã tải lại libary trong bộ nhớ một lần nữa và bây giờ nó hoạt động. Vì vậy, nếu giải pháp trên từ

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
8 không hoạt động, hãy cố gắng khởi động lại máy của bạn.

Đã trả lời ngày 8 tháng 6 năm 2016 lúc 10:54Jun 8, 2016 at 10:54

RVANLAAKRVANLAAKRvanlaak

2.82519 huy hiệu bạc37 Huy hiệu đồng19 silver badges37 bronze badges

1

$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Return data inplace of echoing on screen
curl_setopt($ch, CURLOPT_URL, $strURL);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // Skip SSL Verification
$rsData = curl_exec($ch);
curl_close($ch);
return $rsData;

Đã trả lời ngày 23 tháng 2 lúc 4:01Feb 23 at 4:01

147

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Vì một số lý do, tôi không thể sử dụng Curl với HTTPS. Mọi thứ đều hoạt động tốt cho đến khi tôi chạy nâng cấp các thư viện Curl. Bây giờ tôi đang trải qua phản hồi này khi cố gắng thực hiện các yêu cầu Curl: Vấn đề với chứng chỉ SSL CA (đường dẫn? Quyền truy cập?Problem with the SSL CA cert (path? access rights?)

Các đề xuất sau đây được đăng ở đây về các vấn đề liên quan tôi đã cố gắng làm như sau:

  • Tắt xác minh cho máy chủ và ngang hàng

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);
    
  • Bật CURLOPT_SSL_VERIFYPEER và trỏ đến cacert.pem được tải xuống từ http://curl.haxx.se/docs/caextract.html

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
  • Tôi cũng đã cố gắng làm điều tương tự với positivessl.ca-bundle được cung cấp dưới dạng chứng chỉ CA Bundle cho máy chủ mà tôi đang cố gắng kết nối.

  • Chỉnh sửa cài đặt PHP INI với curl.cainfo=cacert.pem (tệp trong cùng thư mục và có thể truy cập bởi Apache)

  • Đổi tên

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
    0 thành
    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
    1

Thật không may, không có điều nào ở trên có thể giải quyết vấn đề của tôi và tôi liên tục gặp vấn đề với thông báo chứng chỉ SSL CA (đường dẫn?)

Và tôi không cần xác minh này ngay từ đầu (tôi nhận thức được các vấn đề bảo mật).

Có ai có bất kỳ đề xuất khác không?

CẬP NHẬT

Sau khi cập nhật các thư viện mới nhất và khởi động lại toàn bộ hộp, không chỉ Apache mà tôi đã làm tất cả dường như đang hoạt động trở lại !!!

Gustavohenke

40.1K13 Huy hiệu vàng117 Huy hiệu bạc124 Huy hiệu đồng13 gold badges117 silver badges124 bronze badges

hỏi ngày 28 tháng 2 năm 2013 lúc 12:41Feb 28, 2013 at 12:41

Hướng dẫn curl php ignore ssl - curl php bỏ qua ssl

6

Theo tài liệu: Để xác minh chứng chỉ máy chủ hoặc ngang hàng, bạn cần chỉ định các chứng chỉ thay thế với tùy chọn

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
2 hoặc thư mục chứng chỉ có thể được chỉ định với tùy chọn
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
3.

Cũng nhìn vào

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
4

  • 1 Để kiểm tra sự tồn tại của một tên chung trong chứng chỉ ngang hàng SSL.
  • 2 Để kiểm tra sự tồn tại của một tên chung và cũng xác minh rằng nó phù hợp với tên máy chủ được cung cấp.

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

Hướng dẫn curl php ignore ssl - curl php bỏ qua ssl

Hassaan

6.8685 Huy hiệu vàng29 Huy hiệu bạc48 Huy hiệu đồng5 gold badges29 silver badges48 bronze badges

Đã trả lời ngày 6 tháng 3 năm 2013 lúc 1:10Mar 6, 2013 at 1:10

Cỏ ba láclover

4.6701 Huy hiệu vàng17 Huy hiệu bạc26 Huy hiệu đồng1 gold badge17 silver badges26 bronze badges

3

$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Return data inplace of echoing on screen
curl_setopt($ch, CURLOPT_URL, $strURL);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // Skip SSL Verification
$rsData = curl_exec($ch);
curl_close($ch);
return $rsData;

Đã trả lời ngày 23 tháng 2 lúc 4:01Feb 23 at 4:01

Hướng dẫn curl php ignore ssl - curl php bỏ qua ssl

Chúng tôi đã có cùng một vấn đề trên máy CentOS7. Vô hiệu hóa

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
5
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
6 không giải quyết vấn đề, chúng tôi không có lỗi Curl nữa nhưng phản hồi vẫn không hợp lệ. Thực hiện
curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
7 với cùng một liên kết với Curl cũng đang thực hiện cũng dẫn đến lỗi chứng chỉ.

-> Giải pháp của chúng tôi cũng là khởi động lại VPS, điều này đã giải quyết nó và chúng tôi đã có thể hoàn thành yêu cầu một lần nữa.

Đối với chúng tôi, đây dường như là một vấn đề tham nhũng bộ nhớ. Khởi động lại các VP đã tải lại libary trong bộ nhớ một lần nữa và bây giờ nó hoạt động. Vì vậy, nếu giải pháp trên từ

curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
8 không hoạt động, hãy cố gắng khởi động lại máy của bạn.

Đã trả lời ngày 8 tháng 6 năm 2016 lúc 10:54Jun 8, 2016 at 10:54

RVANLAAKRVANLAAKRvanlaak

2.83519 Huy hiệu bạc37 Huy hiệu đồng19 silver badges37 bronze badges

1