首页 > 开发 > Python > 正文

bottlepy用mod_wsgi的时候发生一个错误

2017-09-06 19:38:04  来源:网友分享
Traceback (most recent call last):  File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 764, in _handle    return route.call(**args)  File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 1575, in wrapper    rv = callback(*a, **ka)  File "/home/tin/sg/main.py", line 30, in login    user.login(sharer)  File "/home/tin/sg/User.py", line 60, in login    User.send_tcp(self.ip, sharer.id, sharer.password)  File "/home/tin/sg/User.py", line 161, in send_tcp    send(IP(src=ip, dst='destIP') / TCP(sport=sport, dport=80, seq=0, flags='S'))  File "/usr/lib/python2.7/dist-packages/scapy/sendrecv.py", line 251, in send    __gen_send(conf.L3socket(*args, **kargs), x, inter=inter, loop=loop, count=count,verbose=verbose, realtime=realtime)  File "/usr/lib/python2.7/dist-packages/scapy/arch/linux.py", line 307, in __init__    self.ins = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, socket.htons(type))  File "/usr/lib/python2.7/socket.py", line 187, in __init__    _sock = _realsocket(family, type, proto)error: [Errno 1] Operation not permitted

为什么这里会发生权限错误呢?但是我用bottle内置的run()的时候是没有任何问题的。我的wsgi文件是这么设置的

import os, sys, bottlesys.path = ['/home/tin/sg'] + sys.pathos.chdir(os.path.dirname(__file__))import mainbottle.debug(True)application = bottle.default_app()

结构:

.├── main.py├── User.py└── views    ├── template files

解决方案

自己解决了,问题在于执行权限

[uwsgi]gid = rootuid = rootchmod-socket = 777