2

I'm using Python 2.6.6 and I'm getting errors when connecting over https with urllib.request.build_opener(...).open(request)

urlopen error [Errno 1] _ssl.c:504: error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error

I've found that there is problem with TLS SNI, which was added in version 2.7.9. I tried pyOpenSSL (just copied it to my *.py script directory) but no success.

Unfortunately I don't have root access and it's impossible to upgrade python or install any packages. Can I 'install' python 2.7.9 in my home directory and run scripts with that version?

Mikko Ohtamaa
  • 82,057
  • 50
  • 264
  • 435
karolkpl
  • 2,189
  • 10
  • 39
  • 60

1 Answers1

1

It is possible to install any Python version assuming your server has a compiler (GCC) installed you can use.

Download Python source code here. Apply basic UNIX command knowledge to download and extract Gzip archive to a folder inside your home holder. Follow instructions to compile Python.

Please note that the server must have required OpenSSL libraries installed or you won't get SSL support. If you need to bootstrap the whole stack from the scratch (all libraries, compilers, etc.) it is just not feasible and in this case I suggest you move to another server provider.

See also:

https://serverfault.com/questions/353128/recompiling-python-with-ssl-support-on-ubuntu

Community
  • 1
  • 1
Mikko Ohtamaa
  • 82,057
  • 50
  • 264
  • 435