PHP: Kích hoạt cURL trong Windows

417
20-04-2019
PHP: Kích hoạt cURL trong Windows

Nếu bạn đang làm việc với một số mã PHP sử dụng cURL và nhận thấy cURL không được kích hoạt trên máy chủ Windows của bạn. Lỗi sẽ xuất hiện như sau:

Fatal error: Call to undefined function curl_init()

Tuy nhiên, có một tin tốt là PHP libcurl được gói trong cài đặt Windows PHP theo mặc định, và chỉ cần kích hoạt là có thể chạy được.

Tài liệu chính thức về PHP mô tả libcurl library như sau:

"... một thư viện được Daniel Stenberg sang lập, cho phép bạn kết nối và giao tiếp với nhiều loại máy chủ khác nhau, sử dụng nhiều loại giao thức khác nhau."

Libcurl library thường được sử dụng trong PHP khi thực hiện gọi API đến web servers, và có thể bạn đang cố gắng làm điều này với code của mình.

Kích hoạt cURL trong Windows

Trước tiên, bạn sẽ cần biết vị trí của tệp php.ini trong server và cần quyền truy cập để chỉnh sửa.

Nếu bạn không biết vị trí của php.ini, bạn có thể làm theo các bước từ 1-3 trong phần dưới để xác định vị trí file. Còn nếu bạn đã biết php.ini nằm ở đâu, Bizfly Cloud xin hướng dẫn bạn bước 4 sau đây.

1. Tạo một tệp info.php mới trên web server. Cóp đoạn sau vào tệp và lưu:

<?php

phpinfo();

?>

2. Sử dụng web browser để mở info.php

Nếu PHP được cấu hình đúng cách, bạn sẽ thấy một loạt các thông tin cấu hình được hiển thị.

3. Tìm mục cài đặt Loaded Configuration File và hãy lưu ý tới các giá trị cài đặt. Đây là vị trí của tệp php.ini.

Ví dụ: vị trí có thể có dạng: C:\php5.6.30 \ php.ini

Tiếp theo đây, chúng ta cần chỉnh sửa tệp php.ini và kích hoạt phần mở rộng libcurl.

4. Mở tệp php.ini trong trình soạn thảo văn bản text editor

5. Tìm php_curl

Bạn cần tìm một dòng tương tự như dòng sau:

;extension=php_curl.dll

Dòng lệnh được ghi chú bởi dấu ";" ở đầu dòng.

Bỏ ghi chú dòng (loại bỏ dấu ";" ở trước), làm như sau:

extension=php_curl.dll

Lưu ý: bạn có thể cần đặt đường dẫn đầy đủ đến php_curl.dll trong thư mục ext, và thư mục này nằm trong bản cài đặt PHP, ví dụ:

extension=C:\php5.6.30\ext\php_curl.dll

Lưu các thay đổi trong php.ini

Khởi động lại dịch vụ httpd trong Apache

Tải lại info.php trong web browser và tìm curl

Bạn có thể sẽ tìm thấy một dòng như sau:

cURL support: enabled

Nguồn: Bizfly Cloud chia sẻ

>> Có thể bạn quan tâm: Lỗi PHPMyAdmin – "Access Denied Unable to establish a PHP session"

SHARE