Submitting a form causes 'secure connection failed' error that persists

by Cadmonkey33   Last Updated May 15, 2019 10:07 AM

I've got a SSL certified server running drupal 7.37. Everything was working fine until I started adding form submission to a module I'm working on. As soon as I submit the form, I get 'Secure Connection Failed' in all browsers. I can get to other pages ok, but not the homepage which then also throws the same error. This persists until I restart my internet connection.

I did the following test to try and find the problem:

I submit the form on my desktop pc - secure connection failed.

I try to go to the domain root - secure connection failed.

I check on my laptop which is connected to the same router - secure connection failed.

I check on my phone using 4g - works fine.

So I seem to be causing a local network wide issue somehow, but I don't know how to fix it.

This is the form, it just uploads an xml file to the temp directory:

$form['file'] = array(
    '#type' => 'file',
    '#title' => t('XML file'),
$form['submit_button'] = array(
    '#type' => 'submit',
    '#value' => t('Import'),
return $form;

This is the validate function:

$file = file_save_upload('file', array(
    'file_validate_extensions' => array('xml'),

if ($file = file_move($file, 'public://')) 
    $form_state['storage']['file'] = $file;
    form_set_error('file', t("No file was uploaded. Check extension is .xml"));

This is the submit function:

$file = $form_state['storage']['file'];
$file->status = FILE_STATUS_PERMANENT;

$filepath = file_create_url($file->uri);

Any help would be appreciated, it's driving me mental.

UPDATE: This problem disappeared for a few hours, then returned for no apparent reason. I'm thinking it might be a problem with my internet provider.

Tags : forms ssl

Answers 1

For those who end up in this situation, the reason for this to happen is an error somewhere in your PHP code that is not caught by the PHP interpreter or Drupal itself and the server disconnects to your browser immediately before sending any information (including for example the web server certificate). It is not a network-related error as suggested above here.

To solve the problem, install the xdebug PHP module, configure it and run your scripts again. You will now get far better insight in the cause of the error(s) and it is actually caught before a disconnect.

In my case, the disconnect was caused by a recursion limit hit in my code, which was not caught by the PHP interpreter. Took me a few hours, mostly looking in the wrong direction (network issues, certificate issues).

May 15, 2019 09:35 AM

Related Questions

Updated July 06, 2015 13:03 PM

Updated June 24, 2016 08:03 AM

Updated May 21, 2015 22:03 PM

Updated February 22, 2016 05:03 AM

Updated May 19, 2016 07:46 AM