59

私はここのすべての指示に従いました:http://www.tonyspencer.com/2003/10/22/curl-with-php-and-apache-on-windows/

apacheをインストールして構成するには、PHP5パッケージを取得し、CURLパッケージを取得します。

私はapacheを実行し、PHPスクリプトを実行します。問題なし。しかし、curlを使用してphpスクリプトを実行すると、失敗します。

それは戻ります: **Call to undefined function curl_version() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\testing.php on line 5**

5行目はcurl_init()

php -iを出力して、拡張子への正しいパスが呼び出されているかどうかを確認します。正しく設定されています:

extension_dir => C:\PHP\ext => C:\PHP\ext
cURL support => enabled
cURL Information => libcurl/7.16.0 OpenSSL/0.9.8g zlib/1.2.3

走ろうとしたcurl_version() のですが、それでも同じようなエラーが出ます。
PHPがCURL拡張子を見つけられないようですが、php.ini(およびphp -i)はそれが設定されていることを示しています。

何か案が?:)

P.S>  System I m running on:
Windows XP
Apache 2.2
PHP 5.2.6
CURL Win32 Generic Binaries: Win32 2000/XP  metalink    7.19.0  binary  SSL enabled     Daniel Stenberg     249 KB

私はこれを取得しませんでした:

Win32 2000/XP   7.19.0  libcurl     SSL enabled     Günter Knauf    1.55 MB
Should I get this one instead?

CURLを使用する必要がある理由は、それが私のプロジェクトの要件だからです。だから、私はそれに固執することしかできません。XAMPP ... Windowsではどのように機能しますか?おすすめできるサイトはありますか?ありがとう。

私はcURLのインストールとすべてのチェックについて多くのことを試みましたが、それでも問題を回避し続けており、何が起こっているのかわかりません。

Apacheサーバーは適切なPHP.iniを使用します。PHP.iniには正しいextension_dirとextension=php_curl.dllがあります。なぜそれが機能しないのかわかりません。私でさえ、それを設定するためのすべてのステップに従います。:(

4

13 に答える 13

50

curl をインストールするには、次の手順を使用します。

  1. ブラウザーでhttps://curl.haxx.se/dlwiz?type=binを開きます。

  2. ドロップダウン ボックスでオペレーティング システムを選択します。Windows /Win32 または Win 64 のいずれかです。 [選択] をクリックします。

  3. Win 32 の場合、curl を Windows コマンド プロンプト (汎用) で使用するか、Cygwin ターミナル (cygwin) で使用するかを選択します。Win 64 の場合、curl を Windows コマンド プロンプト (汎用) で使用するか、MinGW (MinGW64) で使用するかを選択します。選択をクリック!

  4. 必要に応じて、Windows オペレーティング システムを選択します。終了。

  5. SSL が有効または無効になっているバージョンの [ダウンロード] をクリックします。

  6. ダウンロードしたzipファイルを開きます。C:\Program Files などの見つけやすい場所にファイルを抽出します。

カールのテスト

  1. Windows コマンド プロンプト ターミナルを開きます。([スタート] メニューから [ファイル名を指定して実行] をクリックし、cmd と入力します。)

  2. curl.exe を配置したディレクトリを含むようにパスを設定します。たとえば、C:\Program Files\curl に配置する場合は、次のコマンドを入力します: set path=%path%;"c:\Program Files\curl"

注: パス内の既存のパスに curl.exe ファイルを直接コピーすることもできます。

  1. カールタイプ。次のメッセージが表示されます。 curl: 詳細については、'curl –help' または 'curl –message' を試してください。これは、curl がインストールされ、パスが正しいことを意味します。
于 2013-06-12T20:00:14.247 に答える
22

編集する必要のある PHP.ini を間違えている可能性があります。まず、PHPinfo(); を追加します。info.php に追加し、ブラウザから実行します。

変数リストに表示される PHP ini ディレクトリ パスを書き留めます。PHP-CLI の ini ファイルとは異なることに気付くでしょう。

拡張機能を有効にする

これで完了です:-)

于 2008-10-08T06:32:40.297 に答える
15

XAMPP を使用しており、そこにはいくつかの php.ini ファイルがあります。

php.ini ファイルで次の行を見つけることができます。 ;extension=php_curl.dll

;この行の先頭を削除してください。また、Apache サーバーの再起動が必要になる場合があります。

于 2008-10-08T03:24:34.590 に答える
9

これにも問題がありました。これらすべての手順が正しく行われ、いくつかの誤解が修正された後 (extensions_dir ではなく extension_dir があり、sessions.save_path ではなく session.save_path がある)、何も機能しません。

最後に、php.net で次のメモを見つけました。

注: Win32 ユーザーへの注意: Windows 環境でこのモジュールを有効にするには、libeay32.dll と ssleay32.dll が PATH に存在する必要があります。cURL サイトの libcurl.dll は必要ありません。

そこで、ssleay32.dll、libeay32.dll、php_curl.dll を /PHP から Windows/system32 にコピーし、既存のファイルを置き換えました (古いバージョンの ssleay32.dll と libeay32.dll があることに気付きました)。その後、php_info(); で CURL セクションを見つけました。そして最後にすべてが機能します。

幸運を!

于 2012-05-01T15:59:30.297 に答える
5

この問題を抱えている他の人々への別の答え

拡張行のコメントを外すときは、次のように変更します。

extension=C:/php/ext/php_curl.dll

または拡張フォルダーの場所、私にとってはこれを行うまで機能しませんでした

于 2015-05-06T10:04:18.757 に答える
2

最近、Windows Vista の PHP5 に Curl をインストールしました。最初に PHP5 をインストールしたときに CURL ライブラリを有効にしなかったため、Curl に関する情報が phpinfo() または php.ini に表示されませんでした。

PHP5インストーラー(私にとってはphp-5.2.8-win32-installer.msi)を再実行し、「変更」を選択してCURLをインストールしました。次に、CURL コンポーネントを追加しました。Apache を再起動すると、CURL が機能するはずです。CURL は phpinfo() に表示されます。また、動作を確認するために実行できるサンプル スクリプトを次に示します。Google からの RSS フィードが表示されます。

    <?php
    error_reporting(E_ALL);
    ini_set('display_errors', '1');
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,
    'http://news.google.com/news?hl=en&topic=t&output=rss');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $contents = curl_exec ($ch);
    echo $contents;
    curl_close ($ch);
    ?>
于 2009-02-08T16:59:32.607 に答える
2

注: Win32 ユーザーへの注意 Windows 環境でこのモジュール (cURL) を有効にするには、libeay32.dll と ssleay32.dll が PATH に存在する必要があります。cURL サイトの libcurl.dll は必要ありません。

このメモは私の問題を解決しました。分かち合いの思い。libeay32.dll & ssleay.dll は、php インストール フォルダーにあります。

于 2012-12-19T13:49:52.640 に答える
1

XAMPPはhttp://www.apachefriends.org/en/xampp.htmlにあります。

http://www.apachefriends.org/en/xampp-windows.htmlで、XMAPPforWindowsについて説明しています。

はい、インストール後に3つのphp.iniファイルがあります。1つはphp4用、1つはphp5用、もう1つはapache用です。それに応じて変更してください。

于 2008-10-08T12:20:40.047 に答える
1

私は問題を解決しました。

私のアパッチでは、次のように指定する必要があります。

PHPIniDir "C:// php" AddType application / x-httpd-php .php

php.iniの場合、php.ini_recommendを使用する代わりに、php.ini_distを使用してphp.iniを構成します。

次に、phpエンジンがオンになっていることを確認します。その後、それは今動作します。皆さんありがとう。

于 2008-10-08T23:01:05.683 に答える
0

ここから curl .downloadファイルのバイナリ ファイルを使用できます 。また、windows のコマンドとして curl を使用します。c:\curl -u user@example.com:password http://localhost:3000/user/sign_in など

于 2011-11-23T11:14:42.633 に答える