cURL can work for any server that receives and processes HTTP requests. It is certainly possible that a given server might try to filter out certain requests, perhaps by originating IP address or the USER_AGENT HTTP header, etc. But it it's filtering on some HTTP header, all you'd have to do with cURL is change the value for that header to one the server will accept (assuming you can figure out which header to change and what value to use). And, of course, the page might use sessions or other cookie-based approaches or basic user authentication in order to control access, in which case your cURL script would need to be customized to accommodate that.