title: python httplib Name or service not known
body: <p>I'm trying to use httplib to send credit card information to authorize.net.  When i try to post the request, I get the following traceback:</p>
  
  <pre><code>File "./lib/cgi_app.py", line 139, in run res = method()
  File "/var/www/html/index.py", line 113, in ProcessRegistration conn.request("POST", "/gateway/transact.dll", mystring, headers)
  File "/usr/local/lib/python2.7/httplib.py", line 946, in request self._send_request(method, url, body, headers)
  File "/usr/local/lib/python2.7/httplib.py", line 987, in _send_request self.endheaders(body)
  File "/usr/local/lib/python2.7/httplib.py", line 940, in endheaders self._send_output(message_body)
  File "/usr/local/lib/python2.7/httplib.py", line 803, in _send_output self.send(msg)
  File "/usr/local/lib/python2.7/httplib.py", line 755, in send self.connect()
  File "/usr/local/lib/python2.7/httplib.py", line 1152, in connect self.timeout, self.source_address)
  File "/usr/local/lib/python2.7/socket.py", line 567, in create_connection raise error, msg
  gaierror: [Errno -2] Name or service not known
  </code></pre>
  
  <p>I build my request like so:</p>
  
  <pre><code>mystring = urllib.urlencode(cardHash)
  headers = {"Content-Type": "text/xml", "Content-Length": str(len(mystring))}
  conn = httplib.HTTPSConnection("secure.authorize.net:443", source_address=("myurl.com", 443))
  conn.request("POST", "/gateway/transact.dll", mystring, headers)
  </code></pre>
  
  <p>to add another layer to this, it was working on our development server which has httplib 2.6 and without the source_address parameter in httplib.HTTPSConnection.</p>
  
  <p>Any help is greatly appreciated.</p>
  
  <p>===========================================================</p>
  
  <p>EDIT:</p>
  
  <p>I can run it from command line.  Apparently this is some sort of permissions issue.  Any ideas what permissions I would need to grant to which users to make this happen?  Possibly Apache can't open the port?</p>