Python OSError:[Errno 22]参数无效,在共享主机上运行Django
我正在将我的web迁移到另一台服务器,并且正在为django的工作设置一切。 我可以解决很多问题,但这一个打败了我。我不知道是什么引起的 这是日志:Python OSError:[Errno 22]参数无效,在共享主机上运行Django,python,django,cgi,shared-hosting,Python,Django,Cgi,Shared Hosting,我正在将我的web迁移到另一台服务器,并且正在为django的工作设置一切。 我可以解决很多问题,但这一个打败了我。我不知道是什么引起的 这是日志: Traceback (most recent call last): File "/home/usuario/public_html/cgi-bin/dispatch.cgi", line 24, in <module> runfastcgi(method="threaded", daemonize="false") F
Traceback (most recent call last):
File "/home/usuario/public_html/cgi-bin/dispatch.cgi", line 24, in <module>
runfastcgi(method="threaded", daemonize="false")
File "/home/usuario/test/lib/python3.4/site-packages/django/core/servers/fastcgi.py", line 182, in runfastcgi
WSGIServer(get_internal_wsgi_application(), **wsgi_opts).run()
File "/home/usuario/test/lib/python3.4/site-packages/flup/server/fcgi.py", line 114, in run
ret = ThreadedServer.run(self, sock)
File "/home/usuario/test/lib/python3.4/site-packages/flup/server/threadedserver.py", line 85, in run
clientSock, addr = sock.accept()
File "/home/usuario/test/lib/python3.4/socket.py", line 184, in accept
fd, addr = self._accept()
OSError: [Errno 22] Invalid argument
dispatch.cgi:
#!/home/usuario/test/bin/python3.4m
import sys, os
import traceback
sys.path += ['/home/usuario/app-test']
os.environ['LD_LIBRARY_PATH'] = '/home/usuario/test/lib'
#Switch to new python
PYTHON_EXE = '/home/usuario/test/bin/python3.4'
sys.path.insert(0,'home/usuario/test/bin')
sys.path.insert(0,'home/usuario/test/lib/python3.4/site-packages/django')
sys.path.insert(0,'home/usuario/test/lib/python3.4/site-packages/flup')
sys.path.insert(0,'home/usuario/test/lib/python3.4/site-packages')
os.environ['DJANGO_SETTINGS_MODULE'] = "app.settings"
try:
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
except:
traceback.print_exc(file=open('/home/usuario/public_html/log.txt','w'))
需要指出的是,我在服务器上没有ssh访问权限,因此,如果有人提出解决方案,就必须不需要ssh。
这是配置问题吗?还是服务器端?如果是,是否有解决办法
我使用python 3.4和Django 1.6.5您在这里使用的是什么版本的Django?它已经很久没有支持fastcgi了。如果您真的无法在服务器上使用wsgi,您可能应该找到另一台主机。现在有很多便宜的。我编辑了它,我让它在godaddy上运行,这个服务器和godaddy的结构相同,所以我应该可以让它运行你在这里使用的是什么版本的Django?它已经很久没有支持fastcgi了。如果您真的无法在服务器上使用wsgi,您可能应该找到另一台主机。现在有很多便宜的。我编辑了它,我让它在godaddy上工作,这个服务器和godaddy的结构相同,所以我应该能够让它工作
#!/home/usuario/test/bin/python3.4m
import sys, os
import traceback
sys.path += ['/home/usuario/app-test']
os.environ['LD_LIBRARY_PATH'] = '/home/usuario/test/lib'
#Switch to new python
PYTHON_EXE = '/home/usuario/test/bin/python3.4'
sys.path.insert(0,'home/usuario/test/bin')
sys.path.insert(0,'home/usuario/test/lib/python3.4/site-packages/django')
sys.path.insert(0,'home/usuario/test/lib/python3.4/site-packages/flup')
sys.path.insert(0,'home/usuario/test/lib/python3.4/site-packages')
os.environ['DJANGO_SETTINGS_MODULE'] = "app.settings"
try:
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
except:
traceback.print_exc(file=open('/home/usuario/public_html/log.txt','w'))