Note:
The information in this article - while presented in relation to our Linux Shared Hosting plans, is applicable to all hosting scenarios such as Cloud VMs and Dedicated Servers, where you may need to carry out updates/modifications on your server resources to allow for connection requirements imposed by payment gateway providers, and other services.
Simply, the success of connections in TLS v1.2 are subject to the underlying operation system capabilities - where some older operating systems may not support TLS v1.2, and also installed components; it may well be the case that you will need to move your websites to another server - should the current server not allow for TLS v1.2.
If you are experiencing connections errors - relating to payment processing providers, chances are that you may need to make modifications to your connection code and/or move to our newer NG Shared Hosting plans, to suit connection rules imposed by vendors; SSL connections are now deprecated, where connections TLS connections are now required - at time of writing connections using TLS v1.2 are required.
cURL
In the majority of cases, you will need to amend your cURL code to allow it to use the TLS v1.2 protocol; where perhaps your code is forcing an SSL connection.
The follow code is is a very simplified version of a request using curl, to highlight the topic of discussion - your code may vary and it is up to you to ensure the effectiveness of any code you implement on your website.
<?php
// Create a new cURL resource
$ch = curl_init();// Set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_SSLVERSION, 6);// Grab URL and pass it to the browser
curl_exec($ch);// Close cURL resource, and free up system resources
curl_close($ch);
?>
The following line is of importance - where this needs to be set to '6' in order to use TLS v1.2:
curl_setopt($ch, CURLOPT_SSLVERSION, 6);
For example, you can test against PayPal with the following URL - the typical reply would be similar to "PayPal_Connection_OK":
curl_setopt($ch, CURLOPT_URL, "https://tlstest.paypal.com");
You can find more information in relation to this, via the following article:
- PHP Manual > Function Reference > Other Services > cURL > cURL Functions > curl_setopt
- Specifically the section: CURLOPT_SSLVERSION
Note:
It would be worth mentioning that most CMS based systems i.e. Wordpress, Joomla with cart/payment integrations will have already provided for these changes in their more up-to-date components - as such, if you are using these systems, you should ensure they and your Theme/Template, Plugins/Components are all up-to-date.
PayPal
See the following release regarding the changes required on website using PayPal's IPN services:
Security-Related Changes Required to Avoid Service Disruption
Further Queries
If you have any queries on this, please contact our Support team - see the following for our contact details:
- https://www.blacknight.com/contact-us.html
Comments
0 comments
Article is closed for comments.