HTTP request failed! HTTP/1.1 505 HTTP Version Not Supported error
curl, file-get-contents, http, php
Solution
I found the problem, and it was a simple coding error -- missing url encoding.
The reason I didn't notice it at first was because the code was ok before I did some editing, and I'd missed out the `urlencode()` function before calling the server, which caused a space in the url.
This does seem to be the reason this error occurs for most people. So if you encounter this, use `urlencode()` on all variables which may contain white space in it's value used as URL parameters. So in the case in my question the fixed code will look like:
$api = "http://smpp5.routesms.com:8080/bulksms/sendsms?username=$username&password=$password&source=$source&destination=$destin&dlr=$dlr&type=$type&message=" . urlencode($message);
$resp = file_get_contents($api);
Also, thanks for all of your time and responses, those were informational.
Problem
I'm trying to use `file_get_contents()` to get the response from a server and this error was encountered. Could someone tell me what is the reason and how to fix it? The portion of the code is: ``` $api = "http://smpp5.routesms.com:8080/bulksms/sendsms?username=$username&password=$password&source=$source&destination=$destin&dlr=$dlr&type=$type&message=$message"; $resp = file_get_contents($api); ``` The server responded correctly while I pasted the url in the browser. I learned that this is caused by the server rejecting the client's HTTP version, but I have no idea why that is happening in my case. Any help is much appreciated. Thanks in advance