|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Curl newbie question:
Here is a php script that works fine from the command line with CURL_OPT_PORT set or not -- either way. <?php $fp = fopen( "./results.txt", "w" ); $searchUrl = "http://ethicshare.cs.umn.edu"; $ch = curl_init(); $user_agent = "Mozilla/4.0 pp(compatible; MSIE 5.01; Windows NT 5.0)"; curl_setopt ( $ch, CURLOPT_USERAGENT, $user_agent ); curl_setopt ( $ch, CURLOPT_URL, $searchUrl ); // curl_setopt ( $ch, CURLOPT_PORT, "8080" ); // curl_setopt ( $ch, CURLOPT_POST, 1 ); // curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // return to a var curl_setopt ( $ch, CURLINFO_HEADER_OUT, 1 ); curl_setopt ( $ch, CURLOPT_FILE, $fp ); curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // curl_setopt ( $ch, CURLOPT_FAILONERROR, 1 ); // fail on errors // curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 ); // allow redirects // curl_setopt ( $ch, CURLOPT_TIMEOUT, 15 ); // times out after 15s $info = curl_getinfo ( $ch ); print ( "curl info = " . print_r ( $info, true ) . "\n\n"); curl_setopt ( $ch, CURLOPT_FILE, $fp ); curl_setopt ( $ch, CURLOPT_HEADER, 0 ); curl_exec ( $ch ); curl_close ( $ch ); fclose ( $fp ); ?> When running this same script through apache however, it works fine without the port directive. However, I get no results when attempting to connect to port 8080. Command line curl works fine too. It's only when connecting through apache that my script fails. Here are some specifics about my environment: Apache/2.2.3 (Red Hat) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 PHP/5.1.6 Any /suggestions will be *greatly* appreciated!! This is driving me nuts! Cheers! -- Penny for your thoughts now, my boy Bill -- Bruce Springsteen |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
> When running this same script through apache however, it works fine without > the port directive. However, I get no results when attempting to connect to > port 8080. Command line curl works fine too. It's only when connecting > through apache that my script fails. > > Here are some specifics about my environment: > > Apache/2.2.3 (Red Hat) > > libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 > PHP/5.1.6 > > Any /suggestions will be *greatly* appreciated!! This is driving me > nuts! Your host could have it blocked in the firewall. It could be SeLinux getting in the way. Not sure about other suggestions ![]() Add a verbose call: curl_setopt($ch, CURLOPT_VERBOSE, true); and maybe set the error log for it to use: curl_setopt($ch, CURLOPT_STDERR, '/path/to/file.log'); -- Postgresql & php tutorials http://www.designmagick.com/ |
|
![]() |
| Outils de la discussion | |
|
|