Curl POST files and Squid
For releases we also package a PEAR package for each component. We have a channel server at http://components.ez.no that can be integrated to download each component separately, but with dependency checking. As server back-end we use Chiara_PEAR_Server, which allows us to upload each component's release with a web-form. Now that we're having more and more available components uploading them one by one is no fun anymore—even more because the Firefox developers thought to be smart and force you to use the dialog instead of pasting in the filename.
So I wrote a script not too long ago to upload all the .tgz PEAR packages through curl . That was working great for quite a few releases. Unfortunately, when I rolled our latest 2008.2beta1 release this script refused to work. I investigated a bit and saw that curl posted only the header of the request, and not the POST body. Being annoyed by that I tried older curl versions to see if those were working, but no luck. I even tried PECL 's HTTP package only in order to find out that it actually uses curl in order to do requests.
So because all of that failed, I looked a tad more at the headers that curl was posting, and found this " Expect: 100-continue " header, which can be used to test whether a web server will accept a certain request based on headers. Turns out that Squid doesn't quite support that and simply rejects the request. As we use Squid to accelerate our site, we now have to create an SSH tunnel to the web server so that we can run curl against localhost with a port forward to the web server. Not fun, but it works.
Comments
You can turn this feature off using curl_setopt($curl, CURLOPT_HTTPHEADER, array('Expect:'));
"Expect: 100-continue" only exists since HTTP/1.1. Forcing the use of HTTP/1.0 should work too. For instance: curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
I'm curious to see your little script. Is it opensource ? Would you publish it ? Thanks
Life Line
Only test with 8.2 and later on master with Xdebug CI
Merge branch 'xdebug_3_5'
Remove expliciy path from Xdebug CI
If you're wondering why the @Xdebug issue tracker is unavailable, I can conclusively say that it's another bout of LLM scrapers.
I walked 1.3km in 14m45s
Created 18 benches and a grave; Updated 3 benches, a tree, and a waste_basket
I walked 6.1km in 3h9m07s
Updated a vacant business
Updated a bar
I walked 1.6km in 18m00s
Updated a pub
I walked 3.4km in 54m56s
I walked 1.9km in 23m48s
Updated a pub
I walked 3.4km in 22m41s
Updated a restaurant
I walked 7.2km in 3h16m35s
I walked 9.5km in 2h0m35s
Ribbit!
I heard this little one way before I could see it. It is so well camouflaged!
Created 3 entrances, 3 emergency entrances, and a main entrance; Confirmed a childcare
I walked 6.8km in 1h16m53s
Updated a restaurant
I walked 10.0km in 1h43m36s
I had a good run at Polderprikker today!
#Polderprikker nummer 84 • 4810/5000
🟦1000 🟦1000 🟨879 🟩931 🟦1000
https://polderprikker.nl/I'm looking forward to attending the State of the Map OpenStreetMap conference this coming week in Paris.
Will I see you there?


Shortlink
This article has a short URL available: https://drck.me/cpfas-6jw