OSError: [WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions

[亡魂溺海] 提交于 2019-12-13 03:48:42

问题


I'm experimenting with the use of Huey as a cross platform task queue . I've found https://github.com/pjcunningham/flask-huey-example , which I've cloned and set up a virtualenv for using conda (I'm working on windows). I've followed the updated readme and have managed to get all three windows running without error.However when I open http://localhost:6060/

[![enter image description here][2]][2]

I click on the send button and this breaks the Huey_consumer process :

$ python ...envs/hueytest1/Scripts/huey_consumer.exe run_huey.huey
[2018-08-06 10:19:25,949] INFO:huey.consumer:MainThread:Huey consumer started with 1 thread, PID 1704
[2018-08-06 10:19:25,949] INFO:huey.consumer:MainThread:Scheduler runs every 1 seconds.
[2018-08-06 10:19:25,949] INFO:huey.consumer:MainThread:Periodic tasks are enabled.
[2018-08-06 10:19:25,950] INFO:huey.consumer:MainThread:UTC is enabled.
[2018-08-06 10:19:25,950] INFO:huey.consumer:MainThread:The following commands are available:
+ send_async_email
+ dummy_task
[2018-08-06 10:19:39,743] INFO:huey.consumer.Worker:Worker-1:Executing queuecmd_send_async_email: ba5e092d-b1de-41cd-8b27-72d11c2b13d8
[2018-08-06 10:19:40,766] ERROR:huey.consumer.Worker:Worker-1:Unhandled exception in worker thread
Traceback (most recent call last):
  File "...\envs\hueytest1\lib\site-packages\huey\consumer.py", line 153, in process_task
    self.huey.execute(task)
  File "...\envs\hueytest1\lib\site-packages\huey\api.py", line 271, in execute
    result = task.execute()
  File "...\envs\hueytest1\lib\site-packages\huey\api.py", line 565, in execute
    return func(*args, **kwargs)
  File "E:\ENVS\r3\hueytest1\app\tasks.py", line 23, in send_async_email
    mail.send(msg)
  File "...\envs\hueytest1\lib\site-packages\flask_mail.py", line 491, in send
    with self.connect() as connection:
  File "...\envs\hueytest1\lib\site-packages\flask_mail.py", line 144, in __enter__
    self.host = self.configure_host()
  File "...\envs\hueytest1\lib\site-packages\flask_mail.py", line 158, in configure_host
    host = smtplib.SMTP(self.mail.server, self.mail.port)
  File "...\envs\hueytest1\lib\smtplib.py", line 251, in __init__
    (code, msg) = self.connect(host, port)
  File "...\envs\hueytest1\lib\smtplib.py", line 336, in connect
    self.sock = self._get_socket(host, port, self.timeout)
  File "...\envs\hueytest1\lib\smtplib.py", line 307, in _get_socket
    self.source_address)
  File "...\envs\hueytest1\lib\socket.py", line 724, in create_connection
    raise err
  File "...\envs\hueytest1\lib\socket.py", line 713, in create_connection
    sock.connect(sa)
OSError: [WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions

How Can I get this working?


回答1:


I got exact same error when trying to start Visdom server:

OSError: [WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions

The reason was that there was another process using the same port as Visdom wanted to use which in my case is port 8097.

To debug this I followed these steps:

  1. Use TcpView from Sysinternals to find the process using the port.
  2. If the process turns out to be svchost.exe then you need to find the service that uses this port. To do this run the command: `tasklist /svc /FI "PID eq 1234" where replce 1234 from PID you see in TcpView.
  3. Open Windows Services applet and look for this server. In my case this turned out to be "Delivery Optimization" or DOSvc service which basically uses P2P download of Windows Update bits if you are on large network. I turned off that service temporarily and able to open the port again.



回答2:


Its happens because your firewall is blocking connection for SQL Server. Go to Control Panel -> Windows Defender Firewall -> Advance Setting -> Outbound rule (Block network access R local) will be in Red colour -> right click -> Properties and then allow all connection and Save



来源:https://stackoverflow.com/questions/51709854/oserror-winerror-10013-an-attempt-was-made-to-access-a-socket-in-a-way-forbid

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!